Jquery 过滤对象并为数组指定属性值?
我有一个ko对象,它有一些属性。我只需要ItemName属性的值 是否可以筛选此对象并获取ItemName属性值并将其推送到数组中Jquery 过滤对象并为数组指定属性值?,jquery,knockout.js,Jquery,Knockout.js,我有一个ko对象,它有一些属性。我只需要ItemName属性的值 是否可以筛选此对象并获取ItemName属性值并将其推送到数组中 items":[{"ItemID":1,"ItemName":"Asia","ItemLevel":0,"ItemParentID":0}, {"ItemID":2,"ItemName":"Europe","ItemLevel":1,"ItemParentID":0}, {"ItemID":3,"ItemName":"Africa",
items":[{"ItemID":1,"ItemName":"Asia","ItemLevel":0,"ItemParentID":0},
{"ItemID":2,"ItemName":"Europe","ItemLevel":1,"ItemParentID":0},
{"ItemID":3,"ItemName":"Africa","ItemLevel":2,"ItemParentID":0}]
因此,我们得出以下结论:
array[0] = "Asia"
array[1] = "Europe"
array[2] = "Africa"
ko.utils.arrayFilter(items(), function(item) {
return item.ItemName();
});
可以将与包含映射一起使用,以便仅在所需字段上进行复制:
var mapping = {
'include': ["ItemName""]
}
var viewModel = ko.mapping.fromJS(items, mapping);
可以将与包含映射一起使用,以便仅在所需字段上进行复制:
var mapping = {
'include': ["ItemName""]
}
var viewModel = ko.mapping.fromJS(items, mapping);
使用arrayMap
items":[{"ItemID":1,"ItemName":"Asia","ItemLevel":0,"ItemParentID":0},
{"ItemID":2,"ItemName":"Europe","ItemLevel":1,"ItemParentID":0},
{"ItemID":3,"ItemName":"Africa","ItemLevel":2,"ItemParentID":0}]
var array = ko.utils.arrayMap(items, function(item) {
return item.ItemName;
});
使用arrayMap
items":[{"ItemID":1,"ItemName":"Asia","ItemLevel":0,"ItemParentID":0},
{"ItemID":2,"ItemName":"Europe","ItemLevel":1,"ItemParentID":0},
{"ItemID":3,"ItemName":"Africa","ItemLevel":2,"ItemParentID":0}]
var array = ko.utils.arrayMap(items, function(item) {
return item.ItemName;
});
您编写了几乎正确的代码。只需将
arrayFilter
替换为arrayMap
:
ko.utils.arrayMap(items(), function(item) {
return item.ItemName();
});
您编写了几乎正确的代码。只需将
arrayFilter
替换为arrayMap
:
ko.utils.arrayMap(items(), function(item) {
return item.ItemName();
});