bs同时上传文件以及文件信息

上传图片和图片信息时直接在前端将他们放在同一个json 然后异步上传即可:

前端html:

<form id="ff" action="" method="post">
<table>
<tr>
<td>名称:</td>
<td>
<input class="easyui-validatebox" type="text" name="name" data-options="required:true"></input></td>
</tr>
<tr>
<td>邮箱:</td>
<td>
<input class="easyui-validatebox" type="text" name="email" data-options="required:true,validType:'email'"></input></td>
</tr>
<tr>
<td>标题:</td>
<td>
<input class="easyui-validatebox" type="text" name="subject" data-options="required:true"></input></td>
</tr>
<tr>
<td>内容:</td>
<td>
<textarea name="message" style="height: 60px;"></textarea></td>
</tr>
<tr>
<td>语言:</td>
<td>
<select class="easyui-combobox" name="language">
<option value="ar">Arabic</option>
<option value="bg">Bulgarian</option>
</select>
</td>
</tr>
<tr>
<td>图片:</td>
<td>
<input id="ffp" type="file" οnclick="showMyImage(this)" multiple="1" />
<br />
<img id="thumbnil" style="width:20%; margin-top:10px;" src="" alt="image" />
</td>
</tr>
</table>
</form>
View Code

前端js:

     function uploadfiles() {

       var formData = new FormData();
       //获取文件
        var totalFiles = document.getElementById("ffp").files.length;
        for (var i = 0; i < totalFiles; i++) {
            var file = document.getElementById("ffp").files[i];
            formData.append("FileUpload", file);
        }
       //获取文件外的参数
        params = $('#ff').serializeArray();
        $.each(params, function (i, val) {
            formData.append(val.name, val.value);
        });
       //异步上传
        $.ajax({
            type: "POST",
            url: '/Home/Upload',
            data: formData,
            dataType: 'json',
            contentType: false,
            processData: false,
            success: function (response) {
                alert('succes!!');
            },
            error: function (error) {
                alert("errror");
            }
        });
    }
View Code

后台代码(这里是ASP .NET MVC ):

   [HttpPost]
        public JsonResult Upload(FormCollection collection)
        {
            //保存文件
            for (int i = 0; i < Request.Files.Count; i++)
            {
                HttpPostedFileBase file = Request.Files[i]; //Uploaded file
                                                            //Use the following properties to get file's name, size and MIMEType
                int fileSize = file.ContentLength;
                string fileName = file.FileName;
                string mimeType = file.ContentType;
                System.IO.Stream fileContent = file.InputStream;
                //To save file, use SaveAs method
                file.SaveAs(Server.MapPath("~/") + fileName); //File will be saved in application root
            }
            //获取文件信息(两种方法)
            string var1 = collection["name"];
            var value1 = Request["name"];
            return Json("Uploaded " + Request.Files.Count + " files");
        }
View Code

 

转载于:https://www.cnblogs.com/musexiaoluo/p/6065630.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值