2011-09-08 18 views
3

将给定的jQuery选择器$('#my-id .my-class a')存储为变量jqElement,如何返回该选择器的字符串表示形式?检索jQuery选择器的字符串表示形式

换句话说:

jqElement = $('#my-id .my-class a'); 
jqElement.someFunc(); // returns '#my-id .my-class a' 

我看了这里How do I get a jQuery selector's expression as text?,却发现该信息已过期,且可能不完整。

+0

可能重复http://stackoverflow.com/questions/500246/how-do- I-GET-A-jQuery的选择表达,如文本) –

回答

2
jqElement.selector 

将返回选择值

的[我如何获得一个jQuery选择的表情文字?](
2

选择器属性公开jQuery对象的选择器。例如...

var cache = $("#my-id .my-class a"); 

alert(cache.selector); // will alert "#my-id .my-class a" 
3

正如您所链接到的问题的答案中所述,selector属性是您找到的最合适的方法。

虽然它是基本的选择完全正确,你会发现使用操作方法,如parent()next()等为主,.selector属性将得到血肉模糊,根本无法再利用时:

alert($('foo[id^=fish]:gt(5):eq(4)').selector); // foo[id^=fish]:gt(5):eq(4) 
alert($('foo').children('bar').next().selector); // foo.children(bar).next() 

例如你可以将第一个直接插入$(),但你不能为后者。

3
$('#my-id .my-class a').selector; 
相关问题