Jquery 仅选择同一行中的元素

Jquery 仅选择同一行中的元素,jquery,html,Jquery,Html,我正在用div元素制作计算表,而不是td和tr。表中的每一行都应该根据输入字段条目进行计算 <div id="pricelist_table"> <div class="table_header"> <div id="model">Model</div> <div id="exw">EXW Also</div> <div id="vat">VAT</d

我正在用div元素制作计算表,而不是td和tr。表中的每一行都应该根据输入字段条目进行计算

<div id="pricelist_table">
    <div class="table_header">
        <div id="model">Model</div>
        <div id="exw">EXW Also</div>
        <div id="vat">VAT</div>
        <div id="msrp">MSRP</div>
    </div>
    <div class="table_body">
        <div class="model">XG-C100C</div>
        <div class="exw-price">1</div>
        <div class="without-vat">1</div>
        <div class="msrp-entry"><input class="msrp-data" name="msrp-info" placeholder="enter data"></div>
    <div class="table_body">
        <div class="model">PL-AC56 KIT</div>
        <div class="exw-price">1</div>
        <div class="without-vat">1</div>
        <div class="msrp-entry"><input class="msrp-data" name="msrp-info" placeholder="enter data"></div>
    </div>
</div>

最终的想法是仅在输入数据时单独计算每一行。

的处理程序中。msrp data
对于同一字段,您可以参考
$(此)
。要获取行中其他字段的值,需要对其进行范围分析(例如使用
$(this).closest(“.table\u body”)
):

jQuery(document).ready(函数($){
$(“.msrp数据”).keypress(函数(){
var msrp=+$(this.val();
增值税=25;
var结果=msrp*增值税;
$(“.exw price”,$(this.closest(“.table_body”)).html(结果);
});
});

模型
EXW也
增值税
MSRP
XG-C100C
1.
1.
PL-AC56套件
1.
1.

我建议使用
.closest(“.table_body”)
而不是
.parent().parent()
,这样您就不会太依赖于特定的嵌套深度了。@Barmar是的,好多了。谢谢你们!按计划工作!
jQuery(document).ready(function( $ ){   
   $( ".msrp-data" ).keypress(function() {
    var msrp = $(".msrp-data").val();
    var vat =  25;
    var result = msrp * vat;
    $(".exw-price").html(result);
    });
});