Javascript 将变量作为JQuery ID传入
我将id作为字符串传递到函数中。我想用这个ID来改变背景色。我使用了:Javascript 将变量作为JQuery ID传入,javascript,jquery,Javascript,Jquery,我将id作为字符串传递到函数中。我想用这个ID来改变背景色。我使用了: $("#"+address).css("background-color", "#3399FF"); 但它不会改变背景颜色,当我进行以下操作时: console.log($("#"+address).css("background-color")); 它被认为是未定义的 如何将变量地址传递到jquery中 谢谢你的帮助 凯文我要在这里暗中试探一下 您说您正在使用和地址作为id 1234 Any st. 通过添加# jq
$("#"+address).css("background-color", "#3399FF");
但它不会改变背景颜色,当我进行以下操作时:
console.log($("#"+address).css("background-color"));
它被认为是未定义的
如何将变量地址传递到jquery中
谢谢你的帮助
凯文我要在这里暗中试探一下 您说您正在使用和地址作为id
1234 Any st.
通过添加#
jquery选择器变为:查找ID为1234的元素,然后查找类型为any的任何子元素,然后查找类型为st且类为“”的任何子元素。
看起来像
<div id="1234">
<any>
<st/>
</any>
</div>
因此,为了避免使用有效的id
function jq(myid) {
return '#' + myid.replace(/(:|\.)/g,'\\$1');
}
根据一些猜测:
地址设置不正确,实际查询的计算结果为$(“#”)
$
未设置,或设置为其他库,或完全未定义。(不太可能,因为您没有提到其他错误)address
设置为一个不存在的id
值:$('foo')
可能不存在于需要$('foo')的页面上。
请发布更多代码,并尝试运行
console.log(地址)代码>以确保您正在做您认为应该做的事情。我认为我们需要查看地址示例以更好地帮助您。语法应该正确。我相信你在尝试获取背景颜色时没有定义的原因是因为它没有被明确设置?愚蠢的问题。。。您是否确实尝试过使用代码更改元素的背景颜色?如果是这样,您确定只有一个元素具有该特定id吗?当您使用console.log(address);,时会发生什么;?Try console.log(地址);如果它对您有一个有效的值。您所拥有的应该有效,您确定“#”+address”返回一个有效的标识符吗?您需要添加更多信息。您可能试图访问范围之外的“address”变量。另外,您如何获取和/或传递“address”变量?我可能需要看完整的代码…谢谢!绝对是问题!
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 (".").
function jq(myid) {
return '#' + myid.replace(/(:|\.)/g,'\\$1');
}