2014-02-16 104 views
1

我正在嘗試解決這個問題。任何幫助表示讚賞。jquery,檢查兩個動態創建的文本框的值是否相等

我動態生成文本框的對:

<input type="text" name="pass1[1]"><input type="text" name="pass2[1]"> 
<input type="text" name="pass1[2]"><input type="text" name="pass2[2]"> 
<input type="text" name="pass1[3]"><input type="text" name="pass2[3]"> 

現在我想要動態檢查PASS1 [n]和PASS2 [N]具有相同的值。我設法只在其中一對中做到這一點,並確切知道它的名字。看到我用過的代碼:

var $pass1 = $("input[name^='pass1']"); 
$pass1.data("value", $pass1.val()); 

var $pass2 = $("input[name^='pass2']"); 
$pass2.data("value", $pass2.val()); 

setInterval(function() { 
    var data1 = $pass1.data("value"), 
     val1 = $pass1.val(); 

    var data2 = $pass2.data("value"), 
     val2 = $pass2.val(); 


    if (data2 !== val2 || data1 !== val1) { 
     if (val1 === val2 && val1 != ""){ 
      alert("changed"); 
     } 
     $pass2.data("value", val2); 
     $pass1.data("value", val1); 
    } 
}, 100); 

任何想法?

回答

0

像這樣當輸入值的變化判斷是否相應的一對(基於當前輸入指數)等於fiddle

$(document).ready(function(){ 
    $('input').on('change', function() { 
     var index = $(this).index(); 
     var compareTo = index % 2 ? index-1:index+1; 

     alert($(this).val()==$('input').eq(compareTo).val()); 

    }); 
}); 
相關問題