文本字段中的 javascript 验证

Posted

技术标签:

【中文标题】文本字段中的 javascript 验证【英文标题】:javascript validation in textfield 【发布时间】:2018-11-27 09:48:50 【问题描述】:

当用户中断验证时立即发出警报,但是当我点击输入文本字段时,即使我没有输入任何值,但在 1 个问题中的哪个脚本而不是警报消息。

<script>
        function validation()
            var rate = document.getElementById("rate").value;
            if (rate == "" || rate.length<5);
            alert("it is wrong value");
            return false;
        
    </script>
<div class="form-group col-lg-5">
                !! Form::label('rate', 'Traded Rate:') !!
                !! Form::text('rate', null, ['class'=>'form-control', 'onclick'=>'return validation()'])!!
            </div>

【问题讨论】:

您的 if 语句没有“正文”。所以每次都会调用 alert,即使 if 为假。 @physi 在 javascript 中,单行 if 语句不需要括号。请参阅***.com/questions/4797286/… 了解更多信息。 @Tim Lewis:是的,但是后面的“;”错了,不是吗? @physi 忽略我删除的评论,是的,分号在这里似乎是个问题。 那我能做些什么呢? -@physi 【参考方案1】:

验证似乎已触发,因为您在输入标签上设置了onclick。尝试将onclick 替换为oninput,以便在您开始在输入字段中输入内容时调用该函数。另外,通过将您的函数修改为以下代码来考虑@physi 的评论:

function validation()
    var rate = document.getElementById("rate").value;
    if (rate == "" || rate.length<5)
      alert("it is wrong value");
    
    return false;

【讨论】:

我使用了你的代码,但它给了我相同的结果 -@undrftd 你明白我的问题吗?当我在给我一条消息后感觉文本字段的值错误,但它在感觉值之前发出警报 您的意思是只有在您尝试在该字段中输入时才会验证?你已经把 onlick 改成 oninput 了吗?

以上是关于文本字段中的 javascript 验证的主要内容,如果未能解决你的问题,请参考以下文章

使用文本输入字段时出现 Javascript 中的 NaN

文本字段中的 jquery 验证

验证 ios 中的文本字段并设置 FirstResponder

Javascript 正则表达式将文本字段限制为仅数字(必须允许不可打印的键)

通过 Javascript CheckBox 验证文本框

SwiftUI 验证文本字段中的输入