如何在文件select上触发事件
我有一个表格
<form onSubmit="return disableForm(this);" action="upload.php" method="post" name="f" id="wizecho" enctype="multipart/form-data"> <input type="file" name="file" /> <button onClick="return disableForm(this),ajaxUpload(this.form,'wizecho_upload.php', '<br>Uploading image please wait.....<br>'); return false;"> Upload Image </button> </form>
这是上传一个图像。
在这里,我需要点击button上传图片,我必须使用onClick
事件。 我想删除上传button,一旦文件被选中在input,我想要发射的事件。 我怎么做??
使用文件input上的更改事件。
$("#file").change(function(){ //submit the form here });
您可以在input字段上订阅onchange事件:
<input type="file" id="file" name="file" />
接着:
document.getElementById('file').onchange = function() { // fire the upload here };
这是一个较老的问题,需要一个更新的答案,以解决接受答案评论中@Christopher Thomas关注的问题。 要离开页面并再次select文件,需要在单击或执行touchstart(针对移动设备)时清除该值。 即使当你离开页面并使用jquery的时候,下面的代码也可以工作:
//the HTML <input type="file" id="file" name="file" /> //the JavaScript /*resets the value to address navigating away from the page and choosing to upload the same file */ $('#file').on('click touchstart' , function(){ $(this).val(''); }); //Trigger now when you have selected any file $("#file").change(function(e) { }