使用addClass进行jQuery验证
我想在用户将引用字段留空时添加一条错误消息。当用户输入有效的参考号时,将显示一个表单。但是,我希望我的验证停止显示表单,并在字段留空时显示错误消息 $document.readyfunction{ $search.on'click',函数{ 如果$'ref'.val=={ $'label[for=ref]'。addClasserrorMsg; }否则{ $'label[for=ref]'。删除类错误标志; } }; }; 订位代号 所需参考号 搜索使用addClass进行jQuery验证,jquery,html,validation,Jquery,Html,Validation,我想在用户将引用字段留空时添加一条错误消息。当用户输入有效的参考号时,将显示一个表单。但是,我希望我的验证停止显示表单,并在字段留空时显示错误消息 $document.readyfunction{ $search.on'click',函数{ 如果$'ref'.val=={ $'label[for=ref]'。addClasserrorMsg; }否则{ $'label[for=ref]'。删除类错误标志; } }; }; 订位代号 所需参考号 搜索 如果我理解正确,在本例中,如果搜索词不是空的
如果我理解正确,在本例中,如果搜索词不是空的,您可以使用根据条件切换类。这样,还可以使用方法切换错误消息的可见性。另外,我假设您希望切换标签上的类以将其样式设置为错误,因此我采用以下方式: $document.readyfunction{ $search.on'click',函数{ var isValid=$'ref'.val==; $'label[for=ref]'。toggleClass'error',有效; $'.errorMsg'.toggleisValid; }; }; .错误{ 颜色:红色; } 订位代号 所需参考号 搜索
您也可以通过addclass或remove class尝试此方法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<title>Document</title>
<style>
.errorMsg{
color: red;
}
.referError{
color:red;
}
</style>
</head>
<body>
<form id="reference">
<label for="ref">Booking Reference</label>
<br>
<input type="text" id="ref" name="Booking Reference Number" class="required" placeholder="12"> <span class="referError">Reference number required</span>
<button type="button" id="search">Search</button>
</form>
<script>
$(document).ready(function() {
$('.referError').hide();
$("#search").on('click', function() {
if (($('#ref').val() == '') || ($('#ref').val().length <12)) {
$('label[for="ref"]').addClass("errorMsg");
$('.referError').show();
} else {
$('.referError').hide();
$('label[for="ref"]').removeClass("errorMsg");
}
});
});
</script>
</body>
</html>
所以,如果我纠正了您的错误,您希望在值不是数字或空时隐藏并显示消息 所以我为你们做了这个,检查值是否是一个数字,空意味着不是一个数字 变量$errorMsg=$.errorMsg, $form=$form; //这就是你用点击搜索来修复它的方法 $search.onclick,function e{ //检查该值是否为数字 var checkNumber=$.isNumeric$ref.val; //如果是数字,则显示表单并清空错误消息 如果支票号码{ $form.show $'label[for=ref]'。删除类错误标志; $errorMsg.empty }否则{ //这意味着不是一个数字,所以显示错误 $errorMsg.htmlReference number必需 $'label[for=ref]'。addClasserrorMsg; $form.hide } } 形式{ 显示:无; } .errorMsg{ 颜色:红色; } 订位代号 搜索 这是我的表格。。。
你的尝试似乎出了什么问题?有错误消息吗?没有,没有错误消息出现,当我点击搜索按钮时,表单出现。我没有看到任何隐藏或显示表单的代码。你能把剩下的代码JS,CSS包含进来帮助演示这个问题吗?这不是问题。单击搜索按钮时,我使用隐藏和切换功能隐藏和显示表单。验证与此无关,这是一个作业,我需要包括添加和删除类,虽然我不确定我是否理解。toggleClass相当于addClass和removeClass。当您在字段为空时单击搜索按钮时,您没有看到验证消息吗?让我们看看。我更新了我的答案。如果我理解,您希望显示消息,因为输入是空的,对吗?这里的代码始终显示参考号,您仍然可以单击搜索和表单appears@Smith,你的意思是在进入后,表格应该,如果字段留空,则会显示验证消息,但不会显示表单。你可以禁用搜索按钮直到输入了有效的参考号吗?我不能使用它,因为我需要addClass和removeClass,因为它是我作业的一部分。非常感谢。though@Smith,我通过添加addClass和removeClass为您编辑