2013-08-28 30 views
0

我想比较两个文本框的数据使用jQuery,就像我们比较密码和确认密码,同时使一个电子邮件帐户。我仍然有以下的东西。比较两个文本框的数据不工作使用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"); 
    } 
}); 

DEMO

请帮助我,我怎样才能比较这两个字符串,而只是离开第二个文本框名为t2

在此先感谢。

+0

你不知道后,再次点击一些关于html和javaScript的基础知识。你需要从头开始。 –

+0

@ B.K。也许是真的,但没有帮助。每个人都从某处开始。 –

回答

4

jQuery中试试这个

您正在使用的名称为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"); 
       } 
      }); 
    }); 

Demo

+0

。我想问一件事就是在那里我有在母版页的页眉或只是这两个文本框后,使用此代码 – user2504141

1

在HTML

<input type="text" name="t1" /> 
    <input type="text" name="t2" /> 

您haven'nt提供ID的

你的代码应该是

<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"); 
        } 
       }); 

Updated fiddle

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(); 
    } 
}); 
1

尝试是这样的

$('form').submit(function(evt) { 
    if ($('#textbox1').val() === $('#textbox2').val()) { 
    alert('values match'); 
    evt.preventDefault(); 
    } 
} 

使用。submit()方法结合为形式提交事件,则该2个值从文本框比较 - 如果它们是相同的它显示然后警报阻止默认动作使用event.preventDefault(表单提交)()

Working example demo here

1

如果您需要通过$(“#t1”)获取元素,t1应该是id,而不是名称。

添加ID = “T1” 的输入标签。

<input type="text" name="t1" id="t1" /> 
<input type="text" name="t2" id="t2" /> 
0

name属性不能用作这种选择器。此外,在您的jQuery你已经使用“#”,它的ID的基础上选择一个元素。改变你的HTML如下:

<input type="text" id="t1" /> 
<input type="text" id="t2" /> 
<label class="test" id="lblerror">Error</label> 
0

我改成了ID,而不是名称,模糊事件,而不是点击

点击需要你进入

$("#t2").blur(function() { 



         if ($("#t1").val() === $("#t2").val()) { 
         $("#lblerror").removeClass("test"); 

         } 
         else { 
          $("#lblerror").addClass("test");  

         } 


    });