2011-11-03 48 views
1

我有一些jquery/javascript代碼,改變文檔準備和當表單輸入更改時的一些事情。我如何使這個表單具體?使特定的JavaScript函數形式

$(function() { 
    $('input[name="item_price[]"]').live('change', function() { 
     var tr = $(this).parent().parent(); 
     CalculateData(tr); 
    }); 

如果我的窗體的ID標籤是「my_form」,如何使這個小片段只出現如果ITEM_PRICE []在「my_form」正在被改變,而不是ITEM_PRICE []輸入的所有實例?

+0

查看[descendant selector](http://api.jquery.com/descendant-selector/)。 [tutorials](http://docs.jquery.com/Tutorials)也可能有幫助。 –

+0

再次在西部最快的槍 –

回答

1

使用選擇這樣的代碼,而不是$('#my_form input[name="item_price[]"]')

1

簡單的ID選擇,#my_form,添加到您現有的選擇:

$('#my_form input[name="item_price[]"]').live('change', function() { 
    var tr = $(this).parent().parent(); 
    CalculateData(tr); 
}); 

附加信息:

jQuery選擇參考:http://api.jquery.com/category/selectors/

1

添加#my_form到jQuery選擇

$('#my_form input[name="item_price[]"]').live('change', function() { 
    var tr = $(this).parent().parent(); 
    CalculateData(tr); 
}); 
0

您可以使用委託按以下方式對事件處理程序附加到表單元素。這具有jQuery無需處理不相關事件(即源自表單之外的事件)的附加優勢。

$('form#my_form').delegate('input[name="item_price[]"]', 'click', function() { 
    ... 
});