带有类和变量id的jquery选择器

时间:2013-11-29 12:55:06

标签: javascript jquery

我在变量中有一个元素id,说elementId。现在我想从类.control-menu中选择一个id等于元素id的元素。

我正在尝试

$('.control-menu "#"+elementId')

我收到语法错误。谁能告诉我正确的方法呢?

6 个答案:

答案 0 :(得分:7)

我建议:

$('#' + elementId + '.control-menu');

匹配<div id="elementID" class="control-menu"></div>

id是唯一的;首先选择,然后检查它是否具有匹配的类名。

顺便提一下,您的原始选择器正在搜索id的元素,该元素具有类.control-menu的祖先元素。

如果您正在搜索id的元素是另一个类.control-menu的后代元素,那么:

$('.control-menu #'+elementid);

匹配<div class="control-menu"><div id="elementID"></div></div>

答案 1 :(得分:1)

因为您有一个id,所以您可以使用id选择器,因为元素的id将是唯一的

$('#'+elementId)

答案 2 :(得分:0)

您可以使用:

$('#' + elementId + '.control-menu');

id是唯一的;首先选择,然后检查它是否具有匹配的类名。

顺便提一下,您的原始选择器正在搜索id的元素,该元素具有类.control-menu的祖先元素。

如果您正在搜索id的元素是另一个类.control-menu的后代元素,那么:

$('.control-menu #'+elementid);

答案 3 :(得分:0)

$('.control-menu #'+elementId);

或只是

$('#'+elementId);

答案 4 :(得分:0)

简单如下:

 $('#'+ elementId )
完全不需要课程ID在您的网页中已经是唯一的。


您的问题标题是:jquery selector with a class and variable id ...

如果您要选择与所需变量CLASS同名的ID,请选择:

$('.control-menu .'+ elementId )
//               ^------------------ note the class selector

否则,我会重复你 在一个页面中有多个ID元素。

答案 5 :(得分:0)

试试这个

$('.control-menu #'+elementId)