繁体   English   中英

为什么我的回归不起作用?

[英]Why won't my return work?

我刚刚开始学习JS,就像5-10分钟前一样,有人告诉我尝试创建一个基本的验证功能,但它似乎并不像想要的那样工作。 它检查字段是否为空,该部分是否有效。 但是检查它是否有内容并继续运行代码不会。

我的表格:

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>

问题是你正在使用一个没有提交表格的按钮(无论你的js如何),改变这个dom:

<button type="button" name="button" onclick="return validate();">Hash</button>

对此: 小提琴

<input type="submit" name="button" value="Hash" onclick="return validate();" />

或者你可以在<button> (HT @RocketHazmat)上添加type="submit"小提琴

<button type="submit" name="button" onclick="return validate();">Hash</button>

或者您可以一起删除<button>上的type ,因为默认typesubmit (HT @FabrícioMatté): 小提琴

<button name="button" onclick="return validate();">Hash</button>

此外,稍微偏离主题但我会养成避免直接在你的元素上放置javascript onclicks的习惯。 您可以改为创建侦听器: addEventListener

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM