1

我的问题是“this”选择器没有引用正确的元素。我在 jquery 上进行了搜索,它说您必须键入:“$(this)”才能引用第一个函数,但这不起作用。

html:

<tbody id="tableBody">
            <tr>
                <td>Product 1</td>
                <td class="basisprijs">10.00</td>
                <td class="aantal"><input type="text" name="txtAtl1" value="0" id="txt1"/></td>
                <td class="btw">6</td>
                <td></td>
            </tr>
            <tr>
                <td>Product 2</td>
                <td class="basisprijs">15.00</td>
                <td class="aantal"><input type="text" name="txtAtl2" value="0" id="txt2"/></td>
                <td class="btw">21</td>
                <td></td>
            </tr>
            <tr>
                <td>Product 3</td>
                <td class="basisprijs">12.20</td>
                <td class="aantal"><input type="text" name="txtAtl3" value="0" id="txt3"/></td>
                <td class="btw">21</td>
                <td></td>
            </tr>
            <tr>
                <td>Product 4</td>
                <td class="basisprijs">13.00</td>
                <td class="aantal"><input type="text" name="txtAtl4" value="0" id="txt4"/></td>
                <td class="btw">21</td>
                <td></td>
            </tr>
        </tbody>

Javascript:

$(document).ready(setup);

function setup()
{
$('input').keyup(function refresh(){
    $("#tableBody tr").each(function() {
        $('this td:last-child').html("test");       
    });
});
}
4

2 回答 2

3

试试这样:

$('input').keyup(function refresh(){
    $("#tableBody tr").each(function() {
        $(this).find('td:last-child').html("test");       
    });
});
于 2013-04-12T16:05:16.473 回答
1
$('td:last-child',this).html("test");   

另一种方式是

$(this).find("td:last-child"); 
于 2013-04-12T16:04:10.037 回答