jQuery的ajaxFileUpload上传插件——刷新一次才能再次调用触发change
2016-10-20 16:33
671 查看
这个问题并不是由change事件失效造成的,而是ajaxFileUpload插件造成的,它会把原来的file元素替换成新的file元素,所以之前绑定的change事件就失效了。
查了一些资料,有些朋友推荐了一些方案:
方案一:选择完成自动提交的问题,在每次处理完成后把 file表单 克隆替换成原来的代码
$("#upload").replaceWith($("#upload").clone(true));
方案二:用jQuery的live代替直接使用change。
错误代码:
$("#UploadFile").change(function(){ //do someing });
正确代码:
$("#UploadFile").live('change', function(){ //do someing });
以上是其他朋友方案,经测试并不能解决(可能是我本地代码有问题)。
而我自己的方案则是:
<a class="file"><input id="btnfile" name="btnfile" type="file"/>浏览</a>
我们正常给input 加事件,要么就是直接在表单绑定onchange事件;要么是在js写绑定事件,而这里的绑定事件的方式则有多种:bind(),on(),live()
不管用以上哪种方式input 的事件都会只会触发一次,那么我是怎么处理的呢?
我的绑定事件是这样写的:$(".file").on("change", "input[type='file']", function () {});
就这样搞定了,哈哈哈。。。共同学习,希望对大家有帮助,欢迎提出问题共同交流!
查了一些资料,有些朋友推荐了一些方案:
方案一:选择完成自动提交的问题,在每次处理完成后把 file表单 克隆替换成原来的代码
$("#upload").replaceWith($("#upload").clone(true));
方案二:用jQuery的live代替直接使用change。
错误代码:
$("#UploadFile").change(function(){ //do someing });
正确代码:
$("#UploadFile").live('change', function(){ //do someing });
以上是其他朋友方案,经测试并不能解决(可能是我本地代码有问题)。
而我自己的方案则是:
<a class="file"><input id="btnfile" name="btnfile" type="file"/>浏览</a>
我们正常给input 加事件,要么就是直接在表单绑定onchange事件;要么是在js写绑定事件,而这里的绑定事件的方式则有多种:bind(),on(),live()
不管用以上哪种方式input 的事件都会只会触发一次,那么我是怎么处理的呢?
我的绑定事件是这样写的:$(".file").on("change", "input[type='file']", function () {});
就这样搞定了,哈哈哈。。。共同学习,希望对大家有帮助,欢迎提出问题共同交流!
相关文章推荐
- jQuery的ajaxFileUpload上传文件插件刷新一次才能再次调用触发change
- jQuery的ajaxFileUpload上传文件插件刷新一次才能再次调用触发change
- jQuery的ajaxFileUpload上传文件插件刷新一次才能再次调用触发change
- ajaxFileUpload onchang上传文件插件第二次失效刷新一次才能再次调用触发change事件
- jQuery插件之ajaxFileUpload(异步上传图片并实时显示,并解决onchange后ajaxFileUpload失效问题)
- 无刷新文件上传之二:Jquery文件上传插件--ajaxfileupload
- jQuery插件之ajaxFileUpload(异步上传图片并实时显示,并解决onchange后ajaxFileUpload失效问题)
- jQuery插件之ajaxFileUpload(异步上传图片并实时显示,并解决onchange后ajaxFileUpload失效问题)
- 使用jquery插件ajaxfileupload一次上传多个文件,示例
- jQuery插件之ajaxFileUpload(异步上传图片并实时显示,并解决onchange后ajaxFileUpload失效问题)
- jQuery ajax + ajaxfileupload.js插件 实现无刷新文件上传
- jQuery插件之ajaxFileUpload(异步上传图片并实时显示,并解决onchange后ajaxFileUpload失效问题)
- jquery之ajaxfileupload异步上传插件
- Struts2 +jquery+ajaxfileupload 实现无刷新上传图片
- 使用ajaxFileUpload.js插件实现ajax无刷新上传文件
- jQuery插件AjaxFileUpload文件上传实现Javascript多文件上传功能
- 一个简单的jQuery插件ajaxfileupload.js实现ajax上传文件例子
- jQuery的插件ajaxFileupload上传文件
- jquery 实现ajax 上传文件的功能(使用插件 ajaxfileupload)
- 一个简单的jQuery插件ajaxfileupload实现ajax上传文件例子