使用带有变量的jQuery .css()

时间:2016-05-04 22:10:58

标签: javascript jquery

我有一些来自数据库的ajax请求,对于每个echo我都有一些为jquery css代码编写的css代码。

如果我回应:

echo '"background-color","red"';

我来自aj​​ax的代码:

success: function(sup){ 
var code = sup;
$(#divy).css(code); }

如果我alert(code);我得到"background-color","red"但它在.css()代码中无效。

更新: 如果我已经回显了一些单词并将if语句放在jquery代码中,它可以工作。并说如果代码等于某些单词更改css ..但我想知道为什么第一个不起作用?

1 个答案:

答案 0 :(得分:4)

你把整个字符串作为一个参数,而不是两个。
尝试用逗号分隔字符串,如下所示:

var code = '"background-color","red"';
var args = code.split(',');
$('#divy').css(args[0].slice(1, args[0].length - 1), args[1].slice(1, args[1].length - 1));

编辑:实际上,您还必须删除引号。修正了。
它可能不是最好的方式,但它会摆脱引号,假设它们始终在开始和结束时。

如果您确定引号不会在CSS值的任何位置使用,例如url("img.png"),那么您可以完全删除引号。

code = code.split('"').join('');