我有以下问题。
我有一个aspx文件上传输入,如果某个文本字段有值,则必须只显示文件对话框,否则我必须只显示一个alter say来填充该字段。
我不能使用jquery。
答案 0 :(得分:2)
事件对象具有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中对此进行了测试。