我有一个html表单,我通过ajaxForm({...})调用变成了ajaxForm。其中一个元素是fileInputElement。此外,我已经集成了一个MultiSelector(MultiSelector Source)。当输入元素更改时,我会进行一些验证,以确保用户选择的文件与他们在网页上标记的内容相匹配。我遇到的问题是,如果用户选择了错误的文件,我返回false,但文件输入元素仍然指向用户选择的“坏”文件。我想要在返回false之后阻止它或清除它。有什么想法吗?
作为参考,出于安全原因,不允许简单地更改文件输入元素的值。我尝试了将innerHTML设置为自身的'innerHTML'技巧,但这也没有用。
答案 0 :(得分:4)
快速JS解决方案 - 只需用新的解决方案替换它(不理想,但应该有效):
沿着这些方向:
HTML:
<div id="some_file_field_wrapper">
<input type="file" />
</div>
JavaScript的:
var file_html = '<input type="file" />';
var elem_id = 'some_file_field_wrapper';
document.getElementById( elem_id ).innerHTML = file_html;
答案 1 :(得分:2)
这里有一篇文章,解释了如何使用jquery ...:http://www.electrictoolbox.com/clear-upload-file-input-field-jquery/
希望这会有所帮助...