jQuery.form

jQuery中FormData的使用

旧巷老猫 提交于 2021-01-03 11:42:42
web中数据提交事件是常常发生的,但是大多数情况下我们不希望使用html中的form表单提交,因为form表单提交会中断当前浏览器的操作并且会调到另一个地址(即使这个地址是当前页面),并且会重复加载一些html浪费带宽,我们希望达到一个无刷新的、异步的提交效果来给用户更好的体验,这时候就要使用ajax,ajax可以不依赖表单自行发起一次http请求并且取回服务器响应的数据,这就是ajax的简便之处。我们这里使用JQuery中封装好的ajax函数,更加简便。下面列举几个使用ajax异步提交数据的方法。 一:jquery.js中的$.ajax方法 此方法依赖jquery.js插件,有很多版本,可以自己下载。 我们需要在此$.ajax方法中指定一些参数,比如请求地址、请求类型、所需要传输的数据、请求成功后需要执行的操作,这里简略说一下。 $.ajax({ url: " 你的url地址 " , type: ' post ' , data:{key: ' value ' }, success:function(){ alert( ' 成功 ' ); } }) 这是$.ajax方法的简单用法。其中参数data是你要传输的数据,这里的data支持Json对象和字符串。data数据如果是一个form表单里面的,自己写一个json很慢,可以使用jquery里面的serizlize()方法

Struts2 文件上传 对XHR的请求 (ajax + formData 上传的文件) 拿不到文件

北城余情 提交于 2019-12-02 20:46:18
Struts2 对文件上传是通过 file upload 拦截器实现的,具体引入方法见 这里 。然而 File Upload 拦截器似乎对于 XHR 过来的文件上传请求无法响应。 MMP老子试了半天。 用ajax + formData 的方式 文件能传出去(在浏览器HTTP请求中能看到) HTML: <input id="file" type="file" name="upload"/> <input id="uploadBtn"class="btn-b-m" type="button" value="上传" /> JS: $("#uploadBtn").click(function () { var formData = new FormData(); formData.append("upload", $("#file").get(0).files[0]); jQuery.ajax({ enctype: 'multipart/form-data', url: '/json/blackWhiteLimit/fileUpload.action', type: "post", data: formData, processData: false,//用于对data参数进行序列化处理 这里必须false contentType: false, //必须 success: