我的表单中有一个文本框数组,我需要根据百分比计算成本价格 当我输入价格和%时,cp是用mouseup事件计算的
sp1(name = price[] class = price) %(class = perc) cp1(name = cost[] class = cost)
sp2(name = price[] class = price) %(class = perc) cp2(name = cost[] class = cost)
sp3(name = price[] class = price) %(class = perc) cp3(name = cost[] class = cost)
sp4(name = price[] class = price) %(class = perc) cp4(name = cost[] class = cost)
sp5(name = price[] class = price) %(class = perc) cp5(name = cost[] class = cost)
这是我的jquery代码
$(function(){
var price = document.getElementsByClassName('price')[0];
var taxAmount = document.getElementsByClassName('cost')[0];
var tax = document.getElementsByClassName('perc')[0];
tax.onblur = function() {
var taxAmount1= parseFloat(price.value) * parseFloat(tax.value) / 100;
var tt = parseInt(price.value)-parseInt(taxAmount1);
taxAmount.value=tt;
}
});
但这仅计算第一个文本框,我该如何为整个文本框数组执行此操作 我正在使用数组,因为我想在php中提交此表单。
非常感谢您的帮助。
答案 0 :(得分:0)
jQuery选择器可以很好地匹配一系列匹配元素,所以如果你写的话,
$('.perc').blur( function() {
...
} );
将为'perc'类的所有元素处理该事件。现在要继续计算,您需要使用“价格”和“费用”类访问剩余字段,使用$theElement.val()
获取值并进行计算。
两种最简单的方法是
$(this).siblings('.cost').val();
)。还有其他方法可以访问父,子等。<input ... class="price" data-index="0" />
。这样,您可以使用var index = $(this).data('index'); var price = $('input[data-index="' + index + '"].price').val();
您应该能够继续这些提示。有关详细说明,请提供相关的HTML结构。