我有一张表单,我正在尝试验证。我有一个字段,我想确保是必需的。我在该字段中有以下代码:
<p>
<label for="lf">Name: </label>
<input class="lf" name="name" type="text"/>
<span id="name_error" class="validate_error">Please enter a valid name!</span>
</p>
我希望能够首先关闭,如果他们点击框并且不要输入任何内容然后转到另一个框,我希望显示span标记,以及他们是否点击提交并且没有&#39 ; t键入任何内容。
我有以下jquery代码,但它总是显示span标记,无论如何。
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<script>
$(document).ready(function(){
<!--Name can't be blank-->
$('#name').on('input', function() {
var input=$(this);
var is_name=input.val();
if(is_name){
$("#name_error").hide();
}else{
$("#name_error").show();
}
});
});
</script>
答案 0 :(得分:1)
我认为应该是
$('input.lf').on('blur', function() {
var input=$(this);
var is_name=input.val();
if(is_name){
$("#name_error").hide();
}else{
$("#name_error").show();
}
});
您在输入中没有姓名ID,抱歉只是注意到并修复了
答案 1 :(得分:1)
试试这个:
$('#name').on('blur', function() {
var input=$(this);
var is_name = input.val();
if(is_name){
$("#name_error").hide();
}else{
$("#name_error").show();
}
});
您遇到了一些问题,首先,您的输入中没有id #name。 其次,您需要先用css隐藏错误。 第三,你需要绑定到模糊事件。
答案 2 :(得分:1)
您使用id定位,但该元素没有ID。
在输入元素上设置id="name"
<input class="lf" id="name" name="name" type="text"/>
或在定位时使用其他选择器input[name="name"]
。
$('input[name="name"]').on('input', function() {
(另外,html评论不应该在那里,或者它应该在开头有//
)