jQuery选择与在选择可变(jQuery selector with variable in th

2019-09-18 12:10发布

快速的和愚蠢的jQuery选择的问题。

为什么这不起作用的jsfiddle演示

//config
var ThisTable = $('.ReallyLongSillyTableName');


// Function
$(ThisTable + ' > tbody > tr > td:last-child').each(function() {
    $(this).append('Sales Orders: ');
});

但是,这没有问题的jsfiddle演示

$('.ReallyLongSillyTableName td:last-child').each(function() {
    $(this).append('Some Text');
});

任何建议非常赞赏。

Answer 1:

您可以使用此:

$('tbody > tr > td:last-child', ThisTable).each(function() {
    $(this).append('Sales Orders: ');
});

或这个:

ThisTable.find('tbody > tr > td:last-child').each(function() {
    $(this).append('Sales Orders: ');
});


Answer 2:

试着像下面,

ThisTable.find('tbody > tr > td:last-child').each(function() {
    $(this).append('Sales Orders: ');
});


Answer 3:

$('.ReallyLongSillyTableName'); 是一个jQuery对象,所以你不能把它作为字符串。

因此,尝试

var ThisTable = '.ReallyLongSillyTableName';


// Function
$(ThisTable + ' > tbody > tr > td:last-child').each(function() {
    $(this).append('Sales Orders: ');
});

$(ThisTable + ' td:last-child').each(function() {
    $(this).append('Some Text');
});

您可以使用ThisTable如上或$(ThisTable)使它jQuery对象),为其他目的。



Answer 4:

  1. var ThisTable = $('.ReallyLongSillyTableName'); 是jQuery对象(javascript对象)

  2. $(ThisTable + ' > tbody > tr > td:last-child')在这里()不串+字符串),你有JavaScript对象+字符串,不会给你满弦

  3. 你需要var ThisTable = '.ReallyLongSillyTableName';



文章来源: jQuery selector with variable in the selector