1

抱歉,如果我根本无法正确搜索...

我正在尝试使用从 aJax/json 函数返回的值。我需要在 API 调用的参数中使用这些值。当它只是一个值时我可以做到,但是当逗号在那里时,我无法让它工作。

回报是这样的:

{
    "rawUpdates": [{
        "id": "#qty-8007-224",
        "api": "css",
        "params": "'background-color','red'"
    }]
}

这是我正在使用的函数(在执行单个参数时有效,即 html 和值):

function parseRawUpdates(call) {
    $.each(call, function(key,json) {
        $(json.id)[json.api](json.params);  
    });
}
4

1 回答 1

0
function parseRawUpdates(call) {
    $.each(call, function(key,json) {
        var params=[],tparams=json.params.split(",");
        for(var k=0;k<tparams.length;k++){
          params[k]=tparams[k].replace(/^'/,"").replace(/'$/,"");
        }
        $.fn.[json.api].apply($(json.id),(params));
    });
}

我想不出一个更优雅的解决方案来剥离开始/结束引号的 json.params 部分。(在此处阅读有关 Function.apply的更多信息)

于 2012-07-31T19:07:56.027 回答