用这个简单的例子
<form action="" method="post" enctype="multipart/form-data">
Upload images: <input type="file" name="images[]" multiple="multiple"> <input type="submit" name="submitImgs" value="Upload"/>
</form>
我怎样才能隐藏提交按钮,直到文件字段中的某些内容为止,我试图创建一个php脚本,看看$ _FILES ['error'] == 4或is_file_uploaded等,哪些不起作用。所以我想简单地隐藏按钮,直到在文件字段中选择了某些内容。
答案可能是javascript,jQuery ......我不在乎:D
由于
答案 0 :(得分:7)
<input type="file">
元素具有files
属性。
只需检查files.length
。
jQuery示例,它可以动态修改提交按钮:
// Select the <input type="file"> element
$('input[type=file][name="images[]"]').change(function(){
var hasNoFiles = this.files.length == 0;
$(this).closest('form') /* Select the form element */
.find('input[type=submit]') /* Get the submit button */
.prop('disabled', hasNoFiles); /* Disable the button. */
});
答案 1 :(得分:0)
使用它。将代码附加到文件字段的change
事件中。
$(function() {
$("input:file").change(function() {
var fileName = $(this).val();
if(filename != "") { $("#submitButtonId").show(); } //show the button
});
});
答案 2 :(得分:0)
应隐藏提交的默认状态(CSS display: none
)
在文件字段的更改事件中,您将显示提交按钮
她是代码
<script>
$(function() {
$("#myfileinput").change(function() {
if($(this)).val() != "") $("submit").show();
});
});
</script/>
<form action="" method="post" enctype="multipart/form-data">
Upload images: <input id="myfileinput" type="file" name="images[]" multiple="multiple">
<input type="submit" name="submitImgs" value="Upload" style="display:none"/>
</form>
答案 3 :(得分:0)
<script>
function checkFile() {
var myFSO = new ActiveXObject("Scripting.FileSystemObject");
var filepath = document.upload.file.value;
var thefile = myFSO.getFile(filepath);
var size = thefile.size;
if(size > 0) {
document.getElementById('submit').style.display='block';
}
}
</script>
<form action="" method="post" enctype="multipart/form-data">
Upload images: <input type="file" onChange="checkFile()" name="images[]" multiple="multiple"> <input type="submit" style="display:none;" name="submitImgs" value="Upload" id="submit" />
</form>