Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/450.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何基于名称访问对象元素_Javascript_Asp.net Mvc 4_Knockout.js_Single Page Application_Javascript Objects - Fatal编程技术网

Javascript 如何基于名称访问对象元素

Javascript 如何基于名称访问对象元素,javascript,asp.net-mvc-4,knockout.js,single-page-application,javascript-objects,Javascript,Asp.net Mvc 4,Knockout.js,Single Page Application,Javascript Objects,我有一个从控制器捕获的可观察数组,当我使用js中的ko.mapping时,它会显示出整个对象,我如何从对象访问数组元素。此时,它返回一些东西“{“driverId”:1,“driverName”:“Simon Jenkins”}“我如何只选择名称而不选择ID,或者反之亦然?” if (!pageViewModel.isAuthenticated()) return; $.when(getSecureData("/api/vehicleDrivers/" + id)) .done(func

我有一个从控制器捕获的可观察数组,当我使用js中的ko.mapping时,它会显示出整个对象,我如何从对象访问数组元素。此时,它返回一些东西“{“driverId”:1,“driverName”:“Simon Jenkins”}“我如何只选择名称而不选择ID,或者反之亦然?”

    if (!pageViewModel.isAuthenticated()) return;
$.when(getSecureData("/api/vehicleDrivers/" + id))
.done(function (driverList) {
    driverList.unshift({ "driverId": 0, "driverName": "Please select a driver..." });
     pageViewModel.DriverVM.driverList(driverList);
     pageViewModel.vehicleVM.driverDetail.driverId(ko.mapping.fromJS(driverList));


    /*var List = driverList;
    List[0] = pageViewModel.VehicleVM.driverDetail.driverId;
    List[1] = pageViewModel.vehicleVM.driverDetail.driverName;*/
})
.fail(function (message) {
    $.msgbox(message);
});

}

如果要在映射时忽略某些属性,可以使用。如果要指定包含哪些字段,可以使用进行预处理


然后,您可以使用
ko.mapping
将其转换为可观测值,或者只将其传递给可观测数组。

您可以提供JSFIDLE plunker吗?现在它返回了一些东西“{“driverId”:1,“driverName”:“Simon Jenkins”,}“我怎样才能只识别名字而不识别ID,或者反之亦然:你的意思是
。driverId
?@Grundy是这样的东西到底什么不起作用?我不知道你要什么。
var driverIdList = ko.utils.arrayMap(driverList, function (item) {
    return item.driverID;
});