我想使用jquery比较两个文本框的数据,比如我们在制作电子邮件帐户时比较密码和确认密码。我仍然有以下的东西。
CSS
.test {
display:none;
}
HTML
<input type="text" name="t1" />
<input type="text" name="t2" />
<label class="test" name="lblerror">Error</label>
的jQuery
$("#t2").click(function () {
if ($("#t1").val() === $("#t2").val()) {} else {
$("#lblerror").removeClass("test");
}
});
请帮助我,如何在离开名为t2
的第二个文本框时比较这两个字符串。
提前致谢。
答案 0 :(得分:4)
试试这个
你在Jquery中使用name作为Id,这是错误的。将名称转换为id。那就行了。
<input type="text" id="t1" />
<input type="text" id="t2" />
<label class="test" id="lblerror">Error</label>
JS
$(function(){
$("#t2").change(function () {
if ($("#t1").val() === $("#t2").val()) {
$("#lblerror").addClass("test");
}
else {
$("#lblerror").removeClass("test");
}
});
});
答案 1 :(得分:1)
在你的HTML中
<input type="text" name="t1" />
<input type="text" name="t2" />
你没有提供身份证件
您的代码应该是
<input type="text" name="t1" id="t1" />
<input type="text" name="t2" id="t2" />
此外,您需要添加blur
事件。
$("#t2").blur(function () {
if ($("#t1").val() == $("#t2").val()) {
$("#lblerror").removeClass("test");
}
else {
$("#lblerror").addClass("test");
}
});
答案 2 :(得分:1)
$("#t2")
会引用包含id="t2"
的元素,但您的所有字段只有name
而没有id
。您应该在字段中添加id
以访问它。
尝试将您的HTML代码更改为如下所示:
<input type="text" id="t1" />
<input type="text" id="t2" />
<label class="test" id="lblerror">Error</label>
您可以使用以下代码然后比较两个字段的值,然后根据比较结果显示/隐藏标签错误。
$("#t2").on("blur", function () {
if ($("#t1").val() === $("#t2").val()) {
$("#lblerror").hide();
} else {
$("#lblerror").show();
}
});
答案 3 :(得分:1)
尝试这样的事情
$('form').submit(function(evt) {
if ($('#textbox1').val() === $('#textbox2').val()) {
alert('values match');
evt.preventDefault();
}
}
使用.submit()方法绑定到表单的submit事件,然后比较文本框中的2个值 - 如果它们相同则显示警告,然后使用事件阻止默认操作(表单提交)。 preventDefault()方法
答案 4 :(得分:1)
如果您需要通过$(“#t1”)获取元素,则t1应为id,而不是名称。
将id =“t1”添加到输入标记。
<input type="text" name="t1" id="t1" />
<input type="text" name="t2" id="t2" />
答案 5 :(得分:0)
name属性不能以这种方式用作选择器。此外,在你的jquery中你使用了“#”,它根据id来选择一个元素。按如下方式更改HTML:
<input type="text" id="t1" />
<input type="text" id="t2" />
<label class="test" id="lblerror">Error</label>
答案 6 :(得分:0)
我将其更改为ID而不是名称和模糊事件,而不是单击
点击要求您在输入
后再次点击它$("#t2").blur(function () {
if ($("#t1").val() === $("#t2").val()) {
$("#lblerror").removeClass("test");
}
else {
$("#lblerror").addClass("test");
}
});