我有以下问题。
我有一个 aspx 文件上传输入,如果某些文本字段有值,则必须只显示文件对话框,否则我必须简单地显示一个更改语句来填充该字段。
我不能使用 jquery。
我有以下问题。
我有一个 aspx 文件上传输入,如果某些文本字段有值,则必须只显示文件对话框,否则我必须简单地显示一个更改语句来填充该字段。
我不能使用 jquery。
事件对象有一个preventDefault函数,您可以使用它来阻止默认值继续。使用它,您可以将点击事件附加到文件上传,该事件将在尝试选择文件时触发。从那里您可以检查文本输入的值并返回/停止文件元素的默认值。
(function() {
var __file = document.getElementById('file');
var __text = document.getElementById('required');
__file.addEventListener('click', function (e) {
e = e || window.event;
if ( __text.value.length === 0 )
{
e.preventDefault();
return alert('Please fill out the textbox!');
}
})
})()
注意:仅在 Chrome 中进行了测试。