如何验证只接受(任何)图像类型文件的表单
How to validate form which accepts only (any)image type files?
这里我有demo.jsp页面,我在这里上传图像,我已经为jpg,png和gif编写了javascript验证代码,但如果图像类型是其他的,我们不能为每一种类型的条件,所以有没有其他方法来做到这一点?
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ImageResizing</title>
<script>
function vlidate() {
var fileName = document.getElementById("Imgfile").value;
var file_extension = fileName.split('.').pop();
var newWidth = document.getElementById("newWidth").value;
var newHeight = document.getElementById("newHeight").value;
//alert(fileName);
//alert(file_extension);
if (file_extension !== "jpg" || file_extension !== "png" || file_extension !== "gif") {
alert("Choose Valid image");
}
else if ((file_extension == "jpg" || file_extension == "png" || file_extension == "gif") && (newWidth.length != "" && newHeight.length != "")) {
//alert("Go ahead");
document.getElementById("uploadImgForm").submit();
}
}
</script>
</head>
<body bgcolor="#ABD3EB">
<%
out.println("<form method='post' action='FileUploadServlet' enctype='multipart/form-data' id='uploadImgForm' name='uploadImgForm'>");
out.println("<h2>Image Resizing</h2>");
out.println("<table>");
out.println("<tr><td><input type='file' id='Imgfile' name='Imgfile'></td></tr>");
out.println("<tr><td></td></tr>");
out.println("<tr><td>New Width:</td><td><input type='text' id='newWidth' name='newWidth'</td></tr>");
out.println("<tr><td>New Height:</td><td><input type='text' id='newHeight' name='newHeight'</td></tr>");
out.println("<tr><td></td></tr>");
out.println("<tr><td><input type='button' value='Upload Image' onclick='vlidate()' ></td></tr>");
//out.println("<tr><td><input type='submit' value='Upload Image' ></td></tr>");
out.println("</table>");
out.println("</form>");
%>
</body>
您可以在输入标签
中添加accept属性<input type="file" name="imagefilename" accept="image/x-png, image/gif, image/jpeg" />
<input type="file" accept="image/*">
第一个适用于chrome,而第二个适用于chrome和FF
请参阅此链接
要创建一个允许多个文件支持的文件输入框,只需执行
<input type="file" multiple="multiple" name="File1" id="File1" accept="image/*" />
相关文章:
- 未捕获的类型错误: 无法读取未定义的属性“图像”
- 如何通过内容类型为“image/jpeg”的 AJAX 调用将画布图像从 GUI 保存到后端
- 灯箱类型的东西,使图像成为浏览器高度的百分比
- 在 javascript 中验证或读取远程图像类型
- ExtJS:“图像”类型的精灵:如何更改像素
- 输入类型的图像在Internet Explorer中不起作用,但在Chrome和Firefox中起作用
- 提交输入类型=“;图像“;到另一个servlet时,未能返回任何参数
- websocketapi-图像编码在客户端不产生任何图像类型
- 如何在模式窗口中从html表单文件类型打开图像
- 如何在类型为“”的输入上调用onclick函数;图像”;
- 如何访问图像取决于通知类型
- 谷歌地图和谷歌地点库中不同地点类型的不同图像
- 带有条纹导轨的信用卡类型图像 4.
- 输入类型图像上的点击事件提交表单
- 在jquery中输入类型图像单击事件
- 如何在jQuery中检查输入类型图像值
- 我如何检测哪个表单输入类型=图像在JavaScript中按下
- jquery正在删除输入类型图像
- 异步加载具有未知 MIME 类型(图像或文本)的内容
- 预加载输入类型图像