我正在帮朋友学习她的考试。一个问题是创建不显眼的javascript来验证此HTML代码中的表单。似乎永远不会在当前代码中输入if语句。我究竟做错了什么?谢谢您的帮助。
答案 0 :(得分:2)
使用if(current.value == "")
(引号之间没有空格,两个等号 - 我不确定空值是否为空字符串或未定义)。
由于输入值(如果提供)是字符串而且空字符串之外的任何内容都为true,因此使用if(!current.value)
也很方便。
还值得考虑HTML5 form validation。
发表评论:span-element被"删除"因为您的表单已发送并且页面重新加载。要阻止它,请将e.preventDefault()
放在catch中,其中e
是处理函数的事件参数。我还建议使用innerText
(替换旧的错误消息)而不是appendChild
(添加新的错误消息)。在代码中:
function validateForm(e) { // event parameter
try {
...
}
catch(oError){
var errorRef = document.getElementById("errMsg");
errorRef.innerText= oError; // innerText instead of appendChild
e.preventDefault(); // this prevents form from sending
// return false; // this is useful only in onsubmit content attribute; useless here
}
}
我还建议在你的git存储库中进行更改:fork