如何使用Xhr请求文件在Mvc4中获取控制器中的图像文件计数 [英] How Can I Get The Image File Count In Controller In Mvc4 Using Xhr Request File

查看:44
本文介绍了如何使用Xhr请求文件在Mvc4中获取控制器中的图像文件计数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我的表格







this is my form



<div style="text-align:center;">
                      
                            @Html.DropDownList("ddlbrand3", (SelectList)ViewBag.brandname, "Select Brand", new { Class = "dropdownlist mar", onchange = "getsegmentsell()" })

                            <select id="ddlsegment3" class="dropdownlist mar" onchange="getmodellist3()">
                                <option value='0'>select Segment</option>
                            </select>
                            <select id="ddlmodel3" class="dropdownlist mar">
                                <option value='0'>select Model</option>
                            </select>

                            @Html.DropDownList("ddlmakeyear", (SelectList)ViewBag.makeyear, "Select Make Year", new { Class = "dropdownlist mar" })


                            @Html.DropDownList("ddlkilometerdri", (SelectList)ViewBag.kilometerdriven, "Kilo Meter Driven", new { Class = "dropdownlist mar" })


                            @Html.DropDownList("ddlnoofowner", (SelectList)ViewBag.noofowner, "Owner(Number of RTO Transfers)", new { Class = "dropdownlist mar" })


                            <input class="dropdownlist mar" id="txtregisid" name="RegNo" type="text" placeholder="Registration No. Ex(MH 06 KL 5890)" />
                            <span id="validregno" style="display:none;color:red;font-size:10px;">Invalid Registration No</span>
                            <br />


                            @Html.DropDownList("ddlregistrationplace", (SelectList)ViewBag.regisplce, "Registration Place", new { Class = "dropdownlist mar" })
                            <br />

                            <input class="dropdownlist mar" id="txtexpectedprice" name="Price" type="text" placeholder="Expected Price" />
                            <br />
                            <span id="spanprice" style="display:none;color:red;font-size:11px;">Invalid Price</span>

                            <span style="font-size: 12px;color: rgb(0, 56, 202); padding-removed148px;">Upload Vehicle Photo</span>
                            <input class="dropdownlist mar multi" style="margin-bottom: 19px;" id="fileupload1" type="file" name="file1" placeholder="Upload Photos" />
                            @if (Session["UID"] != null)
                            {

                            }
                            else
                            {
                                @Html.DropDownList("ddlusertpes", (SelectList)ViewBag.usertypes, "AD Listing By", new { Class = "dropdownlist mar", Style = "margin-bottom: 18px;" })
                            }



                            <center>
                                @*<p class="btnViewAll"><a href="#">Sell Your Vehicle Now</a></p>*@
                                <input type="button" onclick="postvehicle()" value="Sell Your Vehicle Now" class="btn-primary btn-block" style="height: 39px;font-family: verdana;width: 90%;font-size: 15px;">
                            </center>
                        </form>
                    </div>





-------- --end -------------------------





----------end-------------------------


ajax功能-------------------------------





ajax function-------------------------------


<pre lang="cs">var myUrl = '@Url.Action("NewPosting", "HOME")';
              var brand_id = $("#ddlbrand3").val();
              var Segment_id = $("#ddlsegment3").val();
              var Model_id = $("#ddlmodel3").val();
              var makeyear_id = $("#ddlmakeyear").val();
              var kilometer_id = $("#ddlkilometerdri").val();
              var Noofowner_id = $("#ddlnoofowner").val();
              var registration_id = $("#txtregisid").val();
              var registration_place = $("#ddlregistrationplace :selected").text();
              var plc_id = $("#ddlregistrationplace").val();
              var expected_price = $("#txtexpectedprice").val();

              if (brand_id == "" || Segment_id == "" || Model_id == "" || makeyear_id == "" || kilometer_id == "" || Noofowner_id == "" || registration_id == "" || plc_id == "" || expected_price == "") {
                  alert("Please Fill All Details");
              } else {
                  //var role = $("#ddlusertpes").val();
                  if (expected_price > 2500000 || expected_price < 100000) {

                      alert("Expected Price Range Should Be 100000/- to 2500000/-");
                      return false;

                  } else {

                      //var fffff = new FormData();
                      var formdata = new FormData();
                      var imagefile = document.getElementById('fileupload1');
                      for (i = 0; i < imagefile.files.length; i++) {

                          formdata.append(imagefile.files[i].name, imagefile.files[i]);
                      }
                      var xhr = new XMLHttpRequest();
                      xhr.open('POST', myUrl);
                      xhr.setRequestHeader('Content-type', 'multipart/form-data');
                      //Appending file information in Http headers
                      xhr.setRequestHeader('X-File-Name', imagefile.files[0].name);
                      xhr.setRequestHeader('X-File-Type', imagefile.files[0].type);
                      xhr.setRequestHeader('X-File-Size', imagefile.files[0].size);

                      xhr.setRequestHeader('X-File-brandid', brand_id);
                      xhr.setRequestHeader('X-File-segmentid', Segment_id);
                      xhr.setRequestHeader('X-File-Model_id', Model_id);
                      xhr.setRequestHeader('X-File-makeyear_id', makeyear_id);
                      xhr.setRequestHeader('X-File-kilometer_id', kilometer_id);
                      xhr.setRequestHeader('X-File-Noofowner_id', Noofowner_id);
                      xhr.setRequestHeader('X-File-registration_id', registration_id);
                      xhr.setRequestHeader('X-File-registration_place', registration_place);
                      xhr.setRequestHeader('X-File-place_id', plc_id);
                      xhr.setRequestHeader('X-File-expected_price', expected_price);


                      //Sending file in XMLHttpRequest
                      xhr.send(imagefile.files[0]);
                      xhr.onreadystatechange = function () {

                          if (xhr.readyState == 4 && xhr.status == 200) {
                              $("#ddlbrand3").prop('selectedIndex', 0);
                              $("#ddlsegment3").prop('selectedIndex', 0);
                              $("#ddlmodel3").prop('selectedIndex', 0);
                              $("#txtregisid").val("");
                              $("#regisiplace").val("");
                              $("#txtexpectedprice").val("");

                              var control = $("#fileupload1");

                              control.replaceWith(control = control.clone(true));
                              debugger;
                              //alert(xhr.responseText);

                              var Res = xhr.responseText.substring(1, xhr.responseText.length - 1);

                              if (Res == "success") {

                                  alert("Your Vehicle Posting Will Display Within 24 hour.");

                              }

                              else if (Res == "Imagefileerror") {

                                  alert("Only JPG, PNG and JPEG file Format will Accept");

                              } else if (Res == "redirect") {

                                  registrationpop();

                              } else {

                              }


                          }

                      }


                  }
              }







------------------这是我的控制器---------------------- -----------












------------------and this is my controller---------------------------------




string fileName = Request.Headers["X-File-Name"];
              string fileType = Request.Headers["X-File-Type"];

              string brandid = Request.Headers["X-File-brandid"];
              string segmentid = Request.Headers["X-File-segmentid"];
              string modelid = Request.Headers["X-File-Model_id"];
              string makeyearid = Request.Headers["X-File-makeyear_id"];
              string kilometerid = Request.Headers["X-File-kilometer_id"];
              string noofownerid = Request.Headers["X-File-Noofowner_id"];
              string registrationid = Request.Headers["X-File-registration_id"];
              string registrationplace = Request.Headers["X-File-registration_place"];
              string expectedprice = Request.Headers["X-File-expected_price"];
              string placeid = Request.Headers["X-File-place_id"];

              System.IO.Stream fileContent = Request.InputStream;
              string Fnameextention = fileName;

              string[] splitter = Fnameextention.Split('.');
              string name = splitter[0].ToString();
              name = GenerateRandomString(6);
              string extention = splitter[1].ToString();
              //Creating a FileStream to save file's content
              System.IO.FileStream fileStream = System.IO.File.Create(Server.MapPath("~/IMAGES/") + name + '.' + extention);

              fileContent.CopyTo(fileStream);

              fileStream.Dispose();



              string[] validCodes = new string[] { "png", "jpg", "jpeg", "JPEG", "JPG", "PNG" };
              if (!validCodes.Contains(extention))
              {
                  Result = "Imagefileerror";
              }
              else
              {
                  string savedFileName = "/IMAGES/" + name + '.' + extention;

                  ListingHandler objlistinghandler = new ListingHandler();
                  ListingImageHandler objListingImageHandler = new ListingImageHandler();
                  Listing_Entity objListing_Entity = new Listing_Entity();
                  Listing_Image_Entity objListing_Image_Entity = new Listing_Image_Entity();
                  objListing_Entity.User_Id = Convert.ToInt64(userid);
                  objListing_Entity.Brand_Id = Convert.ToInt64(brandid);
                  objListing_Entity.Segment_Id = Convert.ToInt64(segmentid);
                  objListing_Entity.Model_Id = Convert.ToInt64(modelid);
                  objListing_Entity.Make_Year_Id = Convert.ToInt64(makeyearid);
                  objListing_Entity.Kilo_Meter_Id = Convert.ToInt64(kilometerid);
                  objListing_Entity.Number_Of_Owner_Id = Convert.ToInt64(noofownerid);
                  objListing_Entity.Registration_No = registrationid;
                  objListing_Entity.Registration_Place = registrationplace;
                  objListing_Entity.Expected_Price = expectedprice;
                  objListing_Entity.PLACE_ID = Convert.ToInt64(placeid);

                  objListing_Entity.Approval = 0;
                  Int64 id = objlistinghandler.Add_Listing(objListing_Entity);
                  objListing_Image_Entity.Listing_Id = id;
                  objListing_Image_Entity.Image_Url = savedFileName;
                  objListingImageHandler.Add_Image(objListing_Image_Entity);
                  Result = "success";

推荐答案

#ddlbrand3)VAL();
var Segment_id =
("#ddlbrand3").val(); var Segment_id =


#ddlsegment3\" )VAL();
var Model_id =
("#ddlsegment3").val(); var Model_id =


#ddlmodel3\" )VAL();
var makeyear_id =
("#ddlmodel3").val(); var makeyear_id =


这篇关于如何使用Xhr请求文件在Mvc4中获取控制器中的图像文件计数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆