在JavaScript中,我应该创建一个函数来检查表单中的文本字段是否为空。如果是,用户点击提交,用户将不被允许继续。我在w3schools上找到了我认为合适的解决方案(http://www.w3schools.com/js/js_validation.asp)。我查过了比我记得更多的时间,一切似乎都是按顺序的,但它不工作!相反,当单击提交按钮时,该网站调用不同的功能,我在它是不应该做的JavaScript ...表单验证textfield无法正常工作?
HTML代码
Other code
<p>
<form method="post" name="form" action="" onsubmit="return validateName()">
<label for="fullName">Namn: </label><input id="fullName" class="text" name="namn" type="text"> </input>
</p>
<p>
<label for="epost">Epost: </label><input id="epost" class="text" name="epost" type="email"> </input>
</p>
<p>
<input id="submit" type="submit" value="Skicka"> </input>
</p>
</form>
Other code
Javascript代码
function validateName() {
var a = document.forms["form"]["namn"].value;
if (a == null || a == "") {
alert("Name required");
return false;
} else {
return true;
}
}
点击提交按钮应该调用上面的这个函数(validateName),而是调用这个函数:
function alert() {
return confirm("Do you really wish to leave this website?");
}
我已经多次查看了我的代码,找不到任何似乎不合适的东西。你们能找到任何错误吗?也许建议解决方案,解决我的问题,所以我的功能将正常工作?
如果有人能帮我解决这个问题,我将不胜感激!
尝试注释掉该报警功能。你的控制台会出错,你可以找出它从哪里被调用。 – RayfenWindspear
另请注意,通过调用“alert”函数,您可以覆盖默认警报函数。相反,您应该使用var alert = function(){}将您的函数定义封装在本地化范围内。 默认情况下,Javascript在全局范围内声明函数。 – RayfenWindspear
我明白了!应该看到我意外地将我的功能命名为默认功能。谢谢! – Isus