在JQuery中用单行写两个或更多元素样式,其中id的元素通过json object.value
创建了concatinating文本 checkSucess = function(first,last,value) {
// Jquery ajax with url,params and response
doPost('sucess.php',
'first=' + first +
'&last=' + last,
function(response) {
var obj = $.parseJSON(response);
$('#button'+obj.a,'#button'+obj.b,'#button'+obj.c).css({'text-decoration':'blink','color':'#4ECFBD'});
}
);
}
这里
$('#button'+obj.a).css({'text-decoration':'blink','color':'Magenta','font-weight':'bold'});
$('#button'+obj.b).css({'text-decoration':'blink','color':'Magenta','font-weight':'bold'});
$('#button'+obj.c).css({'text-decoration':'blink','color':'Magenta','font-weight':'bold'});
工作正确,
但是
$('#button'+obj.a,'#button'+obj.b,'#button'+obj.c).css({'text-decoration':'blink','color':'#4ECFBD'});
不起作用的原因?
答案 0 :(得分:3)
您使用的是逗号错误。这是可能的,但需要写成
$('#button'+obj.a+',#button'+obj.b+',#button'+obj.c).css({ ... });
请注意,现在逗号 字符串。
更新:我要补充一点,将其写成可能更具可读性
$('#button'+obj.a)
.add('#button'+obj.b)
.add('#button'+obj.c)
.css({ ... });
但是Rob W打败了我。 : - )
答案 1 :(得分:2)
您必须以这种方式合并字符串中的选择器:
$('#button'+obj.a + ', #button'+obj.b + ', #button'+obj.c).css({'text-decoration':'blink','color':'#4ECFBD'});
或者,您可以使用.add()
方法合并选择器:
$('#button'+obj.a)
.add('#button'+obj.b)
.add('#button'+obj.c)
.css({'text-decoration':'blink','color':'#4ECFBD'});