我有很多这些输入类型:
<input type="file" name="file_upload">
当单击提交按钮时,我想通过JS检查这些字段是否为空(换句话说,至少有一个文件被上传).
这是我的代码不起作用:
$('#upload-button').live('click',function () { var has_selected_file = $('input[type=file]').val(); if (has_selected_file) { /* do something here */ } else { alert("No file selected"); } });
这始终不会警告所选文件.
解决方法
使用
.filter()查找带有值的输入元素,并检查长度
$('#upload-button').live('click',function () { var has_selected_file = $('input[type=file]').filter(function(){ return $.trim(this.value) != '' }).length > 0 ; if (has_selected_file) { /* do something here */ } });