2010-05-04 154 views
0

我有一个表,我试图做一个定价清单,自动计算税收组件。jQuery兄弟选择器?

我从price_1获取值,应用数学cal并将其保存到tax_1。我可以读取id的结尾数字,但希望jQuery有更清晰的方式。

E.g.我将有很多领域如..

  • PRICE_1
  • price_2
  • price_3
  • tax_1
  • tax_2
  • tax_3等...

我可以使用下面的代码在价格变化时调用jQuery,并获得该价格的价值。我如何更新旁边的税务字段?我应该使用兄弟选择器还是其他?

$('#pricing').delegate("input", "change", function(){ 

    $(this).val() /* the value of the price */; 

}) 
+0

你可以张贴一些HTML? – GerManson 2010-05-04 05:32:59

回答

0

我将需要一些HTML来给出更好的答案,但是你要求的是非常简单的。

$(document).ready(function() { 
    $(".price").blur(function() { // when the price input loses focus 
     var price = $(this).val();  
     var tax = price * 1.15; // use whatever formula you need here, this is for Mexico. 
     $(this).next().val(tax); 
    } 
}); 

这当然假设有一个输入显示每个价格输入旁边的税额。 如果你决定使用一个标签或跨度只是改变$(this).next().val(tax);$(this).next().text(tax);

+0

感谢所有人都会试试明天,让你知道我是如何去的:) – Brett 2010-05-04 11:00:06

0

如果税收领域存在旁边的价格像你说的,你可以使用next()以选择。如果你也发布你的html,会更好。

0

这取决于你的DOM结构,但通常你可以有像

var commonParent = 'tr'; // a common parent for finding related nodes 

$('#pricing').delegate("input", "change", function(){ 

    var val = $(this).val() /* the value of the price */; 
    var tax = val; 

    $(this).parents(commonParent).find('input[name=*tax]').val(tax); 
})