Jquery 计算应限于具体行,如何计算?

Jquery 计算应限于具体行,如何计算?,jquery,Jquery,我想将对值执行的计算限制在特定行。我如何实现这一点 加价 <table id="nytakstside1tomt"> <theader> <tr> <td class="captioncenter">m²</td> <td class="captioncenter">m²-pris</td> <td class=

我想将对值执行的计算限制在特定行。我如何实现这一点

加价

<table id="nytakstside1tomt">
    <theader>
        <tr>
            <td class="captioncenter">m²</td>
            <td class="captioncenter">m²-pris</td>
            <td class="captioncenter">Seksjonering</td>
            <td class="captioncenter">Sjablon</td>
            <td class="captioncenter"></td>
        </tr>
    </theader>
    <tbody id="tbody_target1">
        <tr>
            <td class="center">
                <input name="m2" class="m2side1" type="number" style="width:60px !important;" />
            </td>
            <td class="center">
                <input name="m2pris" class="m2prisside1" type="number" style="width:75px !important;" />
            </td>
            <td>
                <input name="seksjoneringteller" class="seksjoneringtellerside1" type="number" value="1" style="width:60px !important;" />/
                <input name="seksjoneringnevner" class="seksjoneringnevnerside1" type="number" value="1" style="width:60px !important;" />
            </td>
            <td class="center">
                 <output name="sjablon" class="sjablonside1"></output>
            </td>
            <td class="center">&nbsp;</td>
        </tr>
        <tr>
            <td class="center">
                <input name="m22" class="m2side1" type="number" style="width:60px !important;" />
            </td>
            <td class="center">
                 <input name="m2pris2" class="m2prisside1" type="number" style="width:75px !important;" />
            </td>
            <td>
                <input name="seksjoneringteller2" class="seksjoneringtellerside1" type="number" value="1" style="width:60px !important;" />/
                <input name="seksjoneringnevner2" class="seksjoneringnevnerside1" type="number" value="1" style="width:60px !important;" />
            </td>
            <td class="center">
                 <output name="sjablon2" class="sjablonside1"></output>
            </td>
            <td class="center">&nbsp;</td>
        </tr>
        <tr>
            <td class="center">
                 <input name="m23" class="m2side1" type="number" style="width:60px !important;" />
            </td>
            <td class="center">
                <input name="m2pris3" class="m2prisside1" type="number" style="width:75px !important;" />
            </td>
            <td>
                <input name="seksjoneringteller3" class="seksjoneringtellerside1" type="number" value="1" style="width:60px !important;" />/
                <input name="seksjoneringnevner3" class="seksjoneringnevnerside1" type="number" value="1" style="width:60px !important;" />
            </td>
            <td class="center">
                <output name="sjablon3" class="sjablonside1"></output>
            </td>
            <td class="center">&nbsp;</td>
        </tr>
    </tbody>
</table>

您需要获取引发事件的输入的
最近的()
tr
元素,并将每个输入框的选择器限制在该行,请尝试以下操作:

$(document).on('keyup blur paste', '.m2side1, .m2prisside1, .seksjoneringtellerside1, .seksjoneringnevnerside1', function () {
    var $row = $(this).closest('tr');
    var m2 = $(".m2side1", $row).val();
    var m2pris = $(".m2prisside1", $row).val();
    var teller = $(".seksjoneringtellerside1", $row).val();
    var nevner = $(".seksjoneringnevnerside1", $row).val();
    var str = (m2 * m2pris) / nevner * teller;
    // str = parseInt(str).toLocaleString(); //tusendelsskilletegn
    $(".sjablonside1", $row).html(str);
});

显示有问题的小提琴代码
$(document).on('keyup blur paste', '.m2side1, .m2prisside1, .seksjoneringtellerside1, .seksjoneringnevnerside1', function () {
    var $row = $(this).closest('tr');
    var m2 = $(".m2side1", $row).val();
    var m2pris = $(".m2prisside1", $row).val();
    var teller = $(".seksjoneringtellerside1", $row).val();
    var nevner = $(".seksjoneringnevnerside1", $row).val();
    var str = (m2 * m2pris) / nevner * teller;
    // str = parseInt(str).toLocaleString(); //tusendelsskilletegn
    $(".sjablonside1", $row).html(str);
});