ser*_*adh 40 javascript asp.net-mvc jquery
我有JSON对象,它有几个属性,如id和name.我将它们存储在JavaScript数组中,然后基于下拉列表,我想根据其id从JavaScript数组中检索对象.
假设一个对象有id和name,我如何从我的数组变量中选择它们?
var ObjectsList = data;
var id = $("#DropDownList > option:selected").attr("value");
ObjectsList["id=" + id];
Run Code Online (Sandbox Code Playgroud)
mu *_*ort 58
既然你已经有了jQuery,你可以使用$.grep
:
查找满足过滤函数的数组元素.原始数组不受影响.
所以像这样:
var matches = $.grep(ObjectsList, function(e) { return e.id == id });
Run Code Online (Sandbox Code Playgroud)
这将为您提供数组中匹配条目ObjectsList
的数组matches
.以上假设ObjectsList
具有如下结构:
[
{ id: ... },
{ id: ... },
...
]
Run Code Online (Sandbox Code Playgroud)
如果您知道只有一场比赛或者您只想要第一场比赛,那么您可以这样做:
for(var i = 0, m = null; i < ObjectsList.length; ++i) {
if(ObjectsList[i].id != wanted_id)
continue;
m = a[i];
break;
}
// m is now either null or the one you want
Run Code Online (Sandbox Code Playgroud)
for
循环方法有很多变化,很多人都会嘲笑我,因为他们认为这continue
是一个坏词; 如果你不喜欢continue
那么你可以这样做:
for(var i = 0, m = null; i < ObjectsList.length; ++i) {
if(ObjectsList[i].id == wanted_id) {
m = ObjectsList[i];
break;
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
52557 次 |
最近记录: |