多次单击#input
将每次都上传文件。
单击#button
会依次触发#input
仅在第一次时上传文件(如果第一次单击#input
则根本不上传)。但是,我将打开文件选择器浏览器,只是不上传文件。
为什么会这样,如何更改它以允许多次单击?
PS。为什么我希望这样做而不只是使用#input
?我正在使用jQueryUI对话框,并希望其中一个按钮可以启动输入。
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>My profile</title>
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery-ui.min.js"></script>
<script type="text/javascript" src="js/jquery.fileupload.js"></script>
<script type="text/javascript">
$(function(){
$('#button').click(function(){uploader.trigger('click');});
var uploader=$('#input').fileupload( {
url: 'upload.php',
formData: {user_id:50},
dataType: 'json',
}
);
});
</script>
</head>
<body>
<button id="button">Click</button>
<input id="input" type="file" name="name">
</body>
</html>
最佳答案
据我认为,应该首先改变变量uploader
的顺序以及在click
上注册#button
事件的顺序。
更新资料
同时,每次单击uploader
时启动#button
变量应该可以解决该问题:
$(function(){
$('#button').click(function(){
var uploader=$('#input').fileupload( {
url: 'upload.php',
formData: {user_id:50},
dataType: 'json',
});
uploader.trigger('click');
});
});