Concat参数语法

时间:2015-07-14 10:13:01

标签: javascript jquery ajax json concatenation

不知道如何提问,如果对标题有任何建议请告诉我......

我有以下函数通过AJSON信息检索JSON文件。这个功能如下所示:

setOptionsSettings("[data-machine-brand-options]", apiUrlMachineBrands, 'name');

function setOptionsSettings(htmlElement, url, apiParameter) {

    $.ajax({
        dataType: "json",
        url: url,
        // CREATE GENERIC SOLUTION for the spinner
        beforeSend: function(xhr) {
            $('main').html('<div class="spinner"><div class="hori-verti-centering"><div class="bounce bounce1"></div><div class="bounce bounce2"></div><div class="bounce bounce3"></div></div></div>');
            setHeader(xhr);
        },
        success: function (data) {
            $.each(data, function(i) {
                $(htmlElement).append("<option id=" + data[i].id + " value=" + data[i].apiParameter + ">" + data[i].apiParameter + "</option>");
            });
        }
    });
    return {};
}

我正在尝试设置apiParamter,因此当您调用函数setOptionSettings时,您可以放置​​需要调用的参数的名称。因此,在这种情况下,参数为name。如何将其插入到函数中以便它可以工作?

我尝试了以下和其他解决方案,但没有任何工作,任何建议?

$(htmlElement).append("<option id=" + data[i].id + " value=" + data[i]. + apiParameter + ">" + data[i]. + apiParameter + "</option>");

1 个答案:

答案 0 :(得分:1)

要使用字符串键访问对象属性,请使用Bracket notation,即data[i][apiParameter]

当你使用jQuery创建元素时使用它。

$(htmlElement).append($('<option></option>', {
    "id": data[i].id,
    "value": data[i][apiParameter]
}));