我想检查一下它的有效图像。 我的代码有效图像如下,其工作完善但是,当它的图像数组时,它不起作用?
$("#file").change(function() {
var val = $(this).val();
switch(val.substring(val.lastIndexOf('.') + 1).toLowerCase()){
case 'gif': case 'jpg': case 'png':
//alert("an image");
break;
default:
$(this).val('');
// error message here
alert("Please Select Valid Image");
break;
}
});
它对一个图像的完美工作意味着它对id的工作,但现在我想使用图像数组然后我做什么?它可能与否?
<input id="file" type="file" name="images[]">Enter 8 Images For Batter Product View
<input type="button" id="addmore" value="Add More Image">
添加更多图像,它给我新的图像,所以我采取一个数组,所以我想检查数组这个更改功能是否有效图像? 有可能吗?
感谢
答案 0 :(得分:0)
类型$.ajax({
url: 'makeDBEntry/archive',
data: formData,
contentType: false,
processData: false,
type: 'POST',
success: function(data){
console.log(data);
}
});
的输入具有名为files的属性,该属性是用户选择的文件的数组。它包含名称和大小等信息。您可以遍历它们并检查用户是否输入了有效图像,如下所示:
file
注意:检查文件是否是客户端的图片并不总是有效,用户可以通过更改文件的扩展名来绕过您的支票。 ; t图像,例如$("#file").change(function() {
var files = this.files; // get the array of files
var valid = true;
for(var i = 0; i < files.length && valid; i++) { // while there still files in the array, and valid still true
var val = files[i].name; // get the current filename
// check if the file is a valid image or not (if not don't forget to set valid to false)
switch(val.substring(val.lastIndexOf('.') + 1).toLowerCase()){
case 'gif': case 'jpg': case 'png':
// this is a valid image
break;
default:
// this is not a valid image so "valid" should become false
valid = false;
break;
}
}
if(!valid) // if valid was set to false insde the array (means an invalid file was selected)
alert("select valid images");
});
。阅读更多here!
答案 1 :(得分:0)
我只需将id="file"
更改为class="file"
,这对我有用。
<input class="file" type="file" name="images[]">Enter 8 Images For Batter Product View
<input type="button" id="addmore" value="Add More Image">
<script type="text/javascript">
$(".file").change(function() {
var val = $(this).val();
switch(val.substring(val.lastIndexOf('.') + 1).toLowerCase()){
case 'gif': case 'jpg': case 'png':
//alert("an image");
break;
default:
$(this).val('');
// error message here
alert("Please Select Valid Image");
break;
}
});