在jquery选择器中使用字符串变量

时间:2015-06-18 10:15:00

标签: jquery jquery-selectors

我有一个我定义的变量:

  if($(this).hasClass('firstName')){
        lastname = $(this)
            current='.first-name'
        }

我必须在jQuery选择器中使用此变量。 我尝试了以下但是它不起作用:

$('.invitePartners' + current + '[data-index]')

2 个答案:

答案 0 :(得分:1)

你想要的方式将编译为: $(' .invitePartners.first名[数据索引]&#39);

我认为,在它们之间需要空格才能找到层次化的DOM元素:

$('.invitePartners ' + current + ' [data-index]');

[空间加入' .invitePartners'在' [数据索引]']之前,希望这将解决您的问题

OR

if($(this).hasClass('firstName')){
        lastname = $(this)
            current=' .first-name ';
        }

在当前var值的两侧添加空格。

答案 1 :(得分:0)

可能是它们之间的空格,因为您可能需要后代选择器。

$('.invitePartners ' + current + ' [data-index]')

否则,您将获得类似.invitePartners.first-name[data-index]的值,该值将查找类invitePartnersfirst-name的元素,该元素也具有属性data-index(类似{{1} }})