在谈到 JavaScript/JQuery 时,我仍然认为自己是一个新手。我将如何将其折射为我可以重复使用的方法/函数。
$.getJSON('@Url.Action("GetLabNames", "Micro")', null, function(j) {
var options = '';
for (var i = 0; i < j.length; i++) {
if (elem.value == j[i].Description) {
options += '<option selected="selected" value="' + j[i].Lab_LN_ID + '">' + j[i].Description + '</option>'
} else {
options += '<option value="' + j[i].Lab_LN_ID + '">' + j[i].Description + '</option>'
}
}
$(elem).html(options);
$(elem).multiselect({
multiple: false,
header: "Select an option",
noneSelectedText: 'Lab Name',
selectedList: 1,
minWidth: 150
});
});
我希望有类似的功能
CreateMultiSelect(elem, controller, action, text, value);
但我不能将对象属性传递到函数中,例如(Lab_LN_ID,Description),并使它们成为文本(例如'Lab_LN_ID','Description'),显然行不通,我不确定如何开始吧?
最佳答案
为什么不返回一个具有通用属性名的json对象呢?这将大大简化这一过程。
例如
[{Text: 'text', Value: '1'},{Text: 'text', Value: '1'}]
然后您可以非常轻松地创建所有选项。
$('<option />', { value: item.Value, text: item.Text });
关于javascript - Jquery/Javascript 重构基础知识,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9835627/