Stmixing字符串与数组变量,用于在javascript中为元素分配id
我试图混合一个字符串来分配变量(数组),我不知道怎么了,我无法让它工作 在php中,我将通过json_encode()向javascript发送id数组; 我会得到:键=1、2、3等。 下面是这些部门的一行: 文本 然后在javascript中,使用如下条件:Stmixing字符串与数组变量,用于在javascript中为元素分配id,javascript,Javascript,我试图混合一个字符串来分配变量(数组),我不知道怎么了,我无法让它工作 在php中,我将通过json_encode()向javascript发送id数组; 我会得到:键=1、2、3等。 下面是这些部门的一行: 文本 然后在javascript中,使用如下条件: $("#swas"+key).removeClass('colorme'); function xx(key, arr) { for (var v in arr) { //LOOP var k = arr[v];
$("#swas"+key).removeClass('colorme');
function xx(key, arr) {
for (var v in arr) { //LOOP
var k = arr[v];
if ($("#swas" + k) != key) {
$("#swas" + k).addClass('colorme');
}
}
}
What have I done wrong ?
更新
我之所以想将“swas”与array混合使用,是因为在php页面中有很多同名的div
swas1、swas2、swas3、swas4………>等
“key”是将被单击的当前div的id。和“键”值:001、002、003、004等
我想做的是使另一个div(不是当前div)不改变颜色。
这就是为什么我必须在javascript中混合使用“swas”和“key”
更新2
现在它可以使用上面的脚本,但有一个新问题,单击时不会删除该类:S
更新3
现在,在我移动$(“#swas”+键)之后,一切正常;
在底部:)S您提到swas1 swas2等,但随后您提到arr为001 002等。这些将不匹配 如果您使用jquery,那么会容易得多
$('#swas' + k).addClass('colorme');
您可以使用Firebug之类的工具来确保您的选择是正确的
如果您想使用javascript,那么在追加之前测试Div是否已经有一个类
var el = document.getElementById('hello');
if(el) {
el.className += el.className ? ' someClass' : 'someClass';
}
嘿,“swas”不是一个类名。我不希望它也是一个类名。我想做的是将“swa”与数组(arr[v])混合,如果其中一个是数组!=然后我将向div添加一个类名“colorme”。我已经更新了答案。你也试过用firebug或其他什么东西调试它吗?现在我让它工作了,但问题是我没有在单击时删除该类。这与你的问题标题不匹配。我问你有没有和Firebug联系过。如果您进行了检查,您会注意到swas+k div将按照我的回答正确更新。您好,用户2310289,谢谢您的回答。是的,我现在承认这似乎与标题中的问题不匹配,但问题现在就发生了。你能帮我解释一下为什么它不能删除这个类吗?