0

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": []
      }
    }
4

0 に答える 0