我将id作为字符串传递给函数。我想使用该ID然后更改背景颜色。我用过:
$("#"+address).css("background-color", "#3399FF");
但它没有改变背景颜色,当我这样做时:
console.log($("#"+address).css("background-color"));
它是未定义的。
如何将变量地址传递给jquery?
感谢您的帮助。
凯文
答案 0 :(得分:2)
我将在黑暗中刺伤,
您说您正在使用并以地址作为身份
1234 Any st.
附加#,
#1234 Any st.
jquery选择器变为,找到ID为1234的元素,然后是Any类型的任何子元素,然后是类型为'st的st类型的子元素。 看起来像
<div id="1234">
<any>
<st/>
</any>
</div>
你需要逃离空间,句号,这里的一切!“#$%&amp;'()* +,。/ :;&lt; =&gt;?@ [] ^`{|}〜
根据specification,ID应
must begin with a letter ([A-Za-z]) and may be followed by any number of letters,
digits ([0-9]), hyphens ("-"), underscores ("_"), colons (":"), and periods (".").
为了逃避有效的id使用,
function jq(myid) {
return '#' + myid.replace(/(:|\.)/g,'\\$1');
}
根据HERE
答案 1 :(得分:0)
一对猜测:
address
设置不正确,您的实际查询评估为$('#')
$
未设置,或设置为不同的库,或完全未定义。 (不太可能,因为你没有提到其他错误)address
设置为不存在的id
值:$('#foo')
可能不存在于您需要的页面上$('#bar')
请发布更多代码,然后尝试运行console.log(address);
以确保您正在执行您认为应该执行的操作。
答案 2 :(得分:0)
我认为我们需要查看地址示例,以便更好地为您提供帮助。