JQUERY:使用字符串作为选择器

时间:2014-11-04 07:30:28

标签: jquery

假设这是一个纯字符串..而不是jquery语句:

 \"$("[id^='onetidDoclibViewTb']")\"

这是一个在某处存储为字符串的选择器。

如何将其转换为jquery对象?

在得出结论之前,请仔细考虑这个问题!!

提前致谢

4 个答案:

答案 0 :(得分:3)

您可以使用eval()

var selector = "$('#mydiv')";
var divSelector = eval(selector);
alert(divSelector.text());

Fiddle Demo

答案 1 :(得分:0)

我建议只将选择器表达式存储在字符串中。喜欢

var selector = '#mydiv';
var divSelector = $(selector);
alert(divSelector.text());

答案 2 :(得分:0)

如果您确定该字符串在字符串中始终是一个jquery对象,那么您可以这样做:

var str = "$('#div1')";
var selector = str.substring(3).substring(0, str.length - 5);
var $object = $(selector);

答案 3 :(得分:0)

尝试

 var elem = '\"$("[id^=onetidDoclibViewTb]")\"'.match(/[^\(|\)|"|\$]+/)[0];
 // do stuff with `$(elem)`;



var elem = '\"$("[id^=onetidDoclibViewTb]")\"'.match(/[^\(|\)|"|\$]+/)[0]; 
$(elem).css("color", "blue")

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="onetidDoclibViewTb">elem</div>
&#13;
&#13;
&#13;