我在变量中有一个元素id,说elementId
。现在我想从类.control-menu
中选择一个id等于元素id的元素。
我正在尝试
$('.control-menu "#"+elementId')
我收到语法错误。谁能告诉我正确的方法呢?
答案 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)