0

我想用某个数据属性值更改每个匹配元素的输入字段值。
所以用户点击一个值,就会出现输入字段,然后输入字段中输入的金额也会反映到其他具有相同productid的字段中。

即更改父产品的成本价格,并且变化也实时更新。

编码。

HTML

<table>

<tr>
    <td>Product One</td>
    <td>
        <p class="cost" data-productid="107">12.00</p>
        <input type="text" style="display:none" class="cost_input" data-productid="107"/>
    </td>
</tr>

<tr>
    <td>Variation of Product One</td>
    <td>
        <p class="cost">12.00</p>
        <input type="text" style="display:none" class="cost_input 107" data-productid="107"/>
    </td>
</tr>

<tr>
    <td>Product Two</td>
    <td>
        <p class="cost" data-productid="108">12.00</p>
        <input type="text" style="display:none" class="cost_input" data-productid="108"/>
    </td>
</tr>

JS

    $(".cost").click(function(event) {
            var id = $(this).data('productid');
            $(".cost").hide();
            $('.cost_input').show();
            $(this).next().select();            
            $('.cost_input [data-productid="'+id+'"]').bind('keyup keypress blur', function() {  
            $('.cost_input [data-productid="'+id+'"]').val($(this).val());
            });
});    

小提琴 - http://jsfiddle.net/ez4uD/15/

4

1 回答 1

2

非常接近,只需去掉和之间的选择器中的input空间[data

$('.cost_input[data-productid="'+id+'"]')
于 2013-09-24T01:14:03.950 回答