jQuery.Form如何实现Ajax上传文件同时设置headers
jQuery.Form如何实现Ajax上传文件同时设置headers
发布时间:2018-03-16 来源:查字典编辑
摘要:废话不多说了,关于jqueryform实现ajax上传文件的方法,大家参考一下实例代码吧:functionajaxSubmitForm(){...

废话不多说了,关于jquery form实现ajax上传文件的方法,大家参考一下实例代码吧:

function ajaxSubmitForm() { var option = { url : cache.batchImport, type : 'POST', dataType : 'json', headers : {"token" : localStorage.getItem('token')}, //添加请求头部 success : function(data) { console.log('success') }, error: function(data) { console.log('error'); } }; $("#userForm").ajaxSubmit(option); return false; //最好返回false,因为如果按钮类型是submit,则表单自己又会提交一次;返回false阻止表单再次提交

遇到一个问题,要在上传文件的同时设置headers信息,但form表单提交可以上传文件不能设置headers,ajax可以设置headers不能上传文件,后来从网上找到了jQuery.form可以实现,代码如上。

由于file按钮不能设置样式,要用一个按钮来间接触发file,但这在ie上不能实现,因为ie只可以直接触发按钮实现功能,所以要把file的位置和大小设置为和button一样,但透明度设置为0覆盖在button达到直接触发控件的要求兼容ie。兼容后样式在其他浏览器上又有问题了。

兼容其他浏览器样式代码如下:

var isIE = navigator.userAgent.indexOf('MSIE')>-1; if(!isIE){ $('#filePath').css('z-index',-1); }
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新服务器_操作系统教程学习
热门服务器_操作系统教程学习
电脑子分类