我搜索过高和低,找不到问题的答案。我有一个Ajax函数,可以获取数据并将其插入我的lisboxes。我可以为每个人做一个函数但是想减少代码,因为我很可能需要对其他列表框做请求。代码如下:
function getSelectListAjax(getController, getAction, selectToAppendId, idColName, txtColName) {
var JPath = '../' + getAction;
$.getJSON(JPath, function (result) {
var val = idColName;
var txt = txtColName;
var ddl = $('#' + selectToAppendId);
ddl.empty();
$(result).each(function () {
ddl.append(
$('<option/>', {
value: this.QuestionId,
text: this.Question
}).html(this.Nome)
);
});
});
};
它附加到值:和文字的位置我希望变量从 this。中取出是动态的。所以它可能是 this.QuestionId 或 this.SectionId 等。
如果有人可以帮助或向我发送正确的方向,我将不胜感激。
答案 0 :(得分:1)
在JavaScript this.QuestionId
中类似于通过this['QuestionId']
访问它。
因此,要使用val
和txt
变量动态访问它,请使用this[val]
和this[txt]
。
有关详细信息,请阅读点表示法与括号表示法:"Working with Objects."