2012-02-06 39 views
0

當jquery本身更新輸入值時jquery更新中斷!jquery更新中斷

我有一些輸入框和我寫了一些jQuery的功能是這樣的:

$(document).ready(function() { 
    $('#ind2').change(function() { 
     $('#ind5').val(parseInt($('#ind2').val()) + parseInt($('#ind1').val()) ); 
}); 
}); 

$(document).ready(function() { 
     $('#ind5').change(function() { 
      $('#ind1').val(parseInt($('#ind7').val()) + parseInt($('#ind5').val()) ); 
    }); 
    }); 

當輸入 「IND2」 改變輸入 「IND5」 將改變,所以我需要第二個功能「$('#ind5')。change」自動調用!但是「$('#ind5')。change」只是在用戶更改輸入「ind5」時纔會調用!

我該做什麼?

+0

@afane你爲什麼不嘗試調用$( '#IND5')在$( '#IND2')改變事件中的變化() – Moons 2012-02-06 09:34:11

+0

後您的標記,請 – Rafay 2012-02-06 09:34:35

+0

@KamalDeepSingh:因爲它動態mades由recersive功能,我不能這樣做,這是真的很難管理! – afsane 2012-02-06 09:37:16

回答

1

觸發使用trigger

$(document).ready(function() { 
    $('#ind2').change(function() { 
     $('#ind5').val(parseInt($('#ind2').val()) + parseInt($('#ind1').val()) ); 
     $("#ind5").trigger('change'); 
}); 
}); 
+0

thanx 3nigma;) – afsane 2012-02-06 09:44:19

+0

很高興幫助 – Rafay 2012-02-06 09:55:08

0

很好,不是來看你的腳本後的功能(這似乎很flawd)上#ind5的變化,你需要檢查,如果值是其他人,副的組合verca;

$(document).ready(function() { 
    $('#ind5').change(function() { 
     if (this.value!==(parseInt($('#ind2').val()) + parseInt($('#ind1').val())){ 
      $('#ind1').val(parseInt($('#ind7').val()) + parseInt($('#ind5').val()) ); 
     } 
}); 
});