[英]Uncaught ReferenceError: onchange function is not defined
I am trying to upload an image and check whether this is a valid image with a Javascript function. 我正在尝试上传图片,并使用Javascript函数检查这是否是有效图片。
function validateImage() { var formData = new FormData(); var file = document.getElementById("img").files[0]; formData.append("Filedata", file); var t = file.type.split('/').pop().toLowerCase(); if (t != "jpeg" && t != "jpg" && t != "png" && t != "bmp" && t != "gif") { alert('Please select a valid image file'); document.getElementById("img").value = ''; return false; } if (file.size > 1024000) { alert('Max Upload size is 1MB only'); document.getElementById("img").value = ''; return false; } return true; }
<form action="/upload" method="post" enctype="multipart/form-data"> Image<input type="file" name="upl" accept="image/*" onchange="validateImage()"><br> <input type="submit" value="Submit"> </form>
The function validateImage() is not called and the next message is displayed: 未调用功能validateImage(),并显示下一条消息:
Uncaught ReferenceError: validateImage is not defined at HTMLInputElement.onchange 未捕获的ReferenceError:在HTMLInputElement.onchange上未定义validateImage
Any idea? 任何想法?
You have no element with id="img"
. 您没有
id="img"
元素。 Add the id or choose a different method to select the file input in your JS code. 添加ID或选择其他方法来选择JS代码中输入的文件。
function validateImage() { console.log("validateImage called"); var formData = new FormData(); var file = document.getElementById("img").files[0]; formData.append("Filedata", file); var t = file.type.split('/').pop().toLowerCase(); if (t != "jpeg" && t != "jpg" && t != "png" && t != "bmp" && t != "gif") { alert('Please select a valid image file'); document.getElementById("img").value = ''; return false; } if (file.size > 1024000) { alert('Max Upload size is 1MB only'); document.getElementById("img").value = ''; return false; } return true; }
<form action="/upload" method="post" enctype="multipart/form-data"> Image<input id="img" type="file" name="upl" accept="image/*" onchange="validateImage()"><br> <input type="submit" value="Submit"> </form>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.