使用$(this)的Jquery选择器通过next()处理下一个元素

时间:2012-03-07 10:46:21

标签: jquery next

我试图计算利润百分比并将值写入下一个输入。使用jquery,jstl

<div id="quantityHoleForPercentage">
<form:input path="quantity11Profit"  id="quantity11Profit" cssClass="smaller" />                               
</div>
<div id="quantityHoleForPercentage">
<form:input path="quantity11Price"  id="quantity11Price" cssClass="smaller" />
</div>

我在quantity12Profit上收听更改事件,在我得到这个值后,我将它乘以常量并将结果写入quantity11Price

但是在jquery中我无法处理我的scenerio中的$(“#quantityHoleForPercentage输入”)当我更改quantity11Profit输入时我应该能够使用$(this).next();来处理quantity11Price。 但是我做不到。我做的那件事,我有太多这样的输入。 这是我的jquery代码请给我一些建议,我错了或其他方法 非常感谢

    $("#quantityHoleForPercentage input").change(function(){                    
    var needless=$(this).attr('id');
    var willWriteToPriceInput= $(this).val();
    var priceInput=$(this).next();
    priceInput.val(willWriteToPriceInput);
    });

2 个答案:

答案 0 :(得分:1)

在您的HTML中,ID quantityHoleForPercentage会出现两次,更改它以使控件的ID变为唯一。

答案 1 :(得分:0)

试试这个:

$("#quantityHoleForPercentage input[id$=Profit]").change(function(){
  var willWriteToPriceInput= $(this).val();
  var priceInput = $(this).parent().next()
  priceInput.val(willWriteToPriceInput);
});

但是尝试在html和jquery中将quantityHoleForPercentage从ID更改为Class