Javascript 如何确定是否已单击文件输入?
我有一个脚本,它将触发文件上载表单的单击事件。我想能够确定的文件上传按钮已被点击。以下是我所拥有的:Javascript 如何确定是否已单击文件输入?,javascript,angularjs,Javascript,Angularjs,我有一个脚本,它将触发文件上载表单的单击事件。我想能够确定的文件上传按钮已被点击。以下是我所拥有的: <div ng-click="uploadFile()">Click Me</div> <input name="uploader" type="file" style="display:none;"> var uploadFile = function () { var interval = setInterval(function () {
<div ng-click="uploadFile()">Click Me</div>
<input name="uploader" type="file" style="display:none;">
var uploadFile = function () {
var interval = setInterval(function () {
$('input[name=uploader]').trigger('click');
clearInterval(interval);
}, 50);
}
您真的需要第一次单击,还是只想知道用户何时选择了他们的文件?否则,您可以签出onchange而不是onclick 您可以创建一个全局变量/布尔值,在用户单击按钮时打开和关闭该变量/布尔值,如果用户再次单击按钮,则可以检查布尔值是否为false Put
var hasUploaderBeenTriggered=false
在javascript的最顶端,然后添加hasUploaderBeenTriggered=true代码>后清除间隔(间隔)代码>像这样:
var hasUploaderBeenTriggered = false;
var interval = setInterval(function () {
if(hasUploaderBeenTriggered === false) { // not sure how to do this part
$('input[name=uploader]').trigger('click');
clearInterval(interval);
hasUploaderBeenTriggered = true;
}
}, 50);
是的,我需要第一次点击。实际的输入
字段对用户是隐藏的。好吧,让hasUploaderBeenTriggered
成为布尔值怎么样。Putvar hasUploaderBeenTriggered=false
在javascript的最顶端,然后添加hasUploaderBeenTriggered=true代码>后清除间隔(间隔)代码>
var hasUploaderBeenTriggered = false;
var interval = setInterval(function () {
if(hasUploaderBeenTriggered === false) { // not sure how to do this part
$('input[name=uploader]').trigger('click');
clearInterval(interval);
hasUploaderBeenTriggered = true;
}
}, 50);