【问题标题】:Get part of class name from parent and apply to child JQuery从父类获取部分类名并应用于子 JQuery
【发布时间】:2011-03-13 20:23:18
【问题描述】:

我有以下 HTML

<tr class="wiring_details_6-48">
    <td colspan="2"> Wire Type:
        <select name="select_wire_6" onchange="Estimate.select_wire( 6, this.value, 0 );">
            <option value="" selected="">Select wire..</option>
            <option value="1">14/2</option>
            <option value="2">14/4</option>
            <option value="3">16/4</option>
            <option value="4">16/2</option>
            <option value="5">RG6</option>
            <option value="6">CAT5</option>
            <option value="7">RG59</option>
            <option value="8">LVT</option>
            <option value="9">CAT6</option>
            <option value="10">HDMI</option>
            <option value="11">Shielded CAT6</option>
        </select> </td>
    <td colspan="2">Length:
        <input type="text" class="id_wire_length_6" name="wire_length_6" value="0"></td>
    <td colspan="2">Retail Price:
        <input type="text" class="id_wire_retail_6" name="wire_retail_6" value="0"> </td>
    <td colspan="2">
        <input type="hidden" id="wire_id_6" name="wire_id_6" value="0"> </td>
</tr>

我想确保 input - id_wire_lengthid_wire_retail 与它们的父 tr 相关,这可以证明是因为 part-id 在本例中是 @ 中的数字 6 987654328@ 和id_wire_lengthid_wire_retail

我拥有的JS是:

$('input[class^="id_wire_retail"]').each(function() {
    parts_cents_total += (Money.dollars_to_cents($(this).val()) * $('input[class^="id_wire_length"]').val());
});

以上匹配id_wire_detail 部分以及id_wire_length - 但我如何确保它是与其父级相关的部分,

所以我想归根结底是这样的:

如何获取父tr的部件号(6),然后确保上面的JS只匹配带有tr部件号的输入元素?

【问题讨论】:

    标签: javascript jquery regex parsing pattern-matching


    【解决方案1】:

    而不是这个:

    $('input[class^="id_wire_length"]').val()
    

    ...试试这个:

    $(this).closest('tr').find('input[class^="id_wire_length"]').val()
    

    这将确保您选择的值是同一 &lt;tr&gt; 的“内部”值。假设 HTML 结构与您在上面发布的一样,您不必担心按零件编号匹配。

    【讨论】:

    • 我不确定这是否可行,因为还有其他 tr 元素具有不同的部分 id,它们都使用相同的功能...
    猜你喜欢
    • 2011-07-07
    • 2012-03-23
    • 1970-01-01
    • 2021-12-26
    • 2016-06-25
    • 2016-09-17
    • 1970-01-01
    • 1970-01-01
    • 2013-01-01
    相关资源
    最近更新 更多