在<输入类型=“;文件“/>
Fire javascript event onchange event of <input type="file"/>
我有这个代码
<input id="fileupload"
type="file" name="files[]"
class="inputFile clickable"
onchange="uploadFile(this.value)"/>
第二次使用它时效果良好,即第一次选择文件时onchange事件不会触发,但第二次选择文件效果良好。
这里有什么我可以换的吗?
我试过:
onlclick
(不工作,在选择文件之前激发)onblur
(不工作,根本不启动,而且即使启动了,点击页面上的其他地方启动操作也是愚蠢的)onselect
(不工作)
其他信息:如果我使用onchange=alert(this.value)
,它可以很好地进行
这是我的javascript代码
function uploadFile(value) {
alert(value); //works fine
$('#fileupload').fileupload({
dataType: 'json',
url: 'fileUpload.php',
type: 'POST',
limitConcurrentUploads: 1,
// done: function (e, data) {
// $.each(data.result, function (index, file) {
// $('<p/>').text(file.name).appendTo(document.body);
// });
// },
success: function() {
showMultipleDataDiv(value); //but I don't get value here
}
});
}
一旦用户选择文件,代码$('#fileupload').fileupload
就会触发文件上传。您需要在用户选择文件之前运行此代码,因为它向输入标记添加了一个事件侦听器。由于只有在用户选择文件后才运行此代码,因此它只能在第二次运行。
这是你需要做的改变,使其工作
$(function () {
$('#fileupload').fileupload({
dataType: 'json',
url: 'fileUpload.php',
type: 'POST',
limitConcurrentUploads: 1,
// done: function (e, data) {
// $.each(data.result, function (index, file) {
// $('<p/>').text(file.name).appendTo(document.body);
// });
// },
success: function () {
showMultipleDataDiv(value); //but I don't get value here
}
});
});
请注意,没有必要在更改事件中添加代码。插件会为你做到这一点。
您可以在此处阅读更多信息:https://github.com/blueimp/jQuery-File-Upload/wiki/Basic-plugin
相关文章:
- 在<输入类型=“;文件“/>
- 传递来自<输入类型=“;文件“;id=“;文件“/>尽管还有一个按钮点击
- 触发器<输入类型=“;文件“>用angular程序选择文件
- 用于获取<输入类型=文件>只返回firefox中的文件名
- 浏览器在<输入类型=“;文件“>
- 通过http传输大文件(>100MB)的最佳方式
- 下载大文件>1GB使用http协议、java和javascript
- <输入类型='文件'>提供了URL编码的文件名,导致Android本机浏览器上的FileRea
- Jquery:如何使用“;值“;的<输入类型=“;文件“>领域
- $(“:焦点”)不返回<输入类型=“;文件“/>在Firefox中
- 从noflo-nodejs开始——图<json文件>--batch—register false
- 更改文件.在<输入类型=“;文件“/>
- 如何将FileList数组添加到<输入类型='文件'>控制
- html<输入类型=“;文件“>.在Firefox中使用image/jpeg或image/pjpeg时,jpe
- 我可以't编辑我的<输入类型=“;文件“>标签
- 将默认值放入<输入类型=文件>
- 我可以修改<输入类型='文件'>使用JavaScript
- <输入类型=文件>,jwplayer,javascript问题
- <输入类型=“;文件“>在IE6中打开浏览器窗口,点击文本字段区域作为Firefox
- Cordova FileEntry可以't return文件->FILE_NOT_FOUND_ERR