我刚开始像5-10分钟前一样开始学习JS,有人告诉我尝试创建一个基本的验证功能,但它似乎并不像想要的那样工作。它检查字段是否为空,该部分是否有效。但是检查它是否有内容并继续运行代码不会。
我的表格:
echo '<form action="index.php?action=getHashedText" method="post" name="formHash">
<br/><textarea name="text" rows="4" cols="50" placeholder="Add your text/pharse/word which you want hashing here." autofocus></textarea><br/>
<button type="button" name="button" onclick="return validate();">Hash</button>';
function validate():
<script>
function validate() {
with (window.document.formHash) {
if (formHash.text.value === "") {
alert('Field is empty!');
return false;
} else {
return true;
}
}
}
</script>
答案 0 :(得分:4)
问题是你正在使用一个没有提交表格的按钮(无论你的js如何),改变这个dom:
<button type="button" name="button" onclick="return validate();">Hash</button>
对此:Fiddle
<input type="submit" name="button" value="Hash" onclick="return validate();" />
或者您只需在type="submit"
上添加<button>
(HT @RocketHazmat):Fiddle
<button type="submit" name="button" onclick="return validate();">Hash</button>
或者您可以一起移除type
上的<button>
,因为默认type
为submit
(HT @FabrícioMatté):Fiddle
<button name="button" onclick="return validate();">Hash</button>
此外,稍微偏离主题但我会习惯避免将javascript onclicks直接放在你的元素上。您可以改为创建侦听器:addEventListener