http://jsfiddle.net/user/jsjs/fiddles/
<select>
ネストされたviewModelにバインドするKnockout.jsオプションを使用して、次の要素をバインドできません。何か不足していますか?userFSR().facilityOptions、mainView().userFSR().facilityoptions、および userFSR.facility() を試しました。それらのすべてで、javascript ランタイム エラーが発生しました。実行時エラーが発生しなかったのは、以下の html フラグメントだけですが、ドロップダウンはレンダリング後に空です。ご協力ありがとうございました。
<div id="userFSR">
<select id="selectFacility"
data-bind="options: userFSR.facilityOptions,
selectedOptions: userFSR.facilitySelected,
optionsCaption: 'Choose facility...',
optionsValue: function(item){
return item.facility_ID
},
optionsText: function(item){
return item.facility_name
}">
</select>
</div>
以下は、このように ko.toJSON(self, null, 2) を実行した後のviewModelの内容です
self.toggleVM = function () {
if ($("pre#viewModel").css("display").search("none") != -1) {
$("pre#viewModel").html(ko.toJSON(self, null, 2));
$("pre#viewModel").show();
}
else
$("pre#viewModel").hide();
}
viewModel 出力:
{
"btnCancelValue": "Cancel",
"userBeforeEdit": {
/* omitted */
},
"users": [
{
/* omitted */
},
{
/* omitted */
}
],
"user": {
/* omitted */
},
"operationStatus": "omitted",
"currentIni": "Q",
"initials": [
{
"initial": "+",
"apiUrl": "/* omitted */"
},
{
/* omitted */
}
],
"userFSR": {
"facilityOptions": [
{
"$id": "1",
"s_FacilityService": [],
"facility_ID": 531,
"facility_name": "City 1, State 1",
"Facility_Code": null
},
{
"$id": "2",
"s_FacilityService": [],
"facility_ID": 648,
"facility_name": "City 2, State 2",
"Facility_Code": null
},
{
"$id": "3",
"s_FacilityService": [],
"facility_ID": 663,
"facility_name": "City 3, State 3",
"Facility_Code": null
}
],
"serviceOptions": [],
"roleOptions": [],
"roleSelected": [],
"FsrCollection": []
},
"userPrefFSR": {
"fsrPrefCollection": []
}
}