我有这个javascript函数,我想创建一个jquery选择器,它是从js函数参数值构建的:
function myJSFunction(elementId){
var showSomeData= {
'value_1': 'abc',
'value_2': 'xyz'
};
var selector = "[name=" + elementId + "] option";
jQuery("'" + selector + "'").each(function() {
$(this).attr('title', showSomeData[$(this).val()]);
});
};
但这种代码不起作用。如果我设置具体值,我可以通过使用firebug在html dom中看到,此代码工作正常。我的错是什么?
答案 0 :(得分:2)
而不是使用$("'" + selector + "'")
使用$(selector)
,您的问题就解决了。
答案 1 :(得分:2)
正如评论中所述,您不再需要"'"
来查找元素,直接使用:jQuery(selector)
:
var selector = "[name=" + elementId + "] option";
jQuery(selector).each(function() {
$(this).attr('title', showSomeData[$(this).val()]);
});
答案 2 :(得分:0)
删除引号
var selector = "[name=" + elementId + "] option";
$(selector).each(function(i,val) {
});
<强> Demo 强>