Knockout.js 与外部数据knockoutjs绑定

Knockout.js 与外部数据knockoutjs绑定,knockout.js,knockout-3.0,Knockout.js,Knockout 3.0,来自EventSchema的数据没有绑定,即使我可以在浏览器中看到它。。这可以从我在底部提供的$data值中看出。。 请注意,这是一个非常小的问题再现,模式无法更改 我的html: <div data-bind="with: g"> <div><input type="text" class="form-control" data-bind="value: gname" /></div> <div>

来自EventSchema的数据没有绑定,即使我可以在浏览器中看到它。。这可以从我在底部提供的$data值中看出。。 请注意,这是一个非常小的问题再现,模式无法更改

我的html

<div data-bind="with: g">

    <div><input type="text" class="form-control" data-bind="value: gname" /></div>

         <div>
              <table>

                  <tbody>
                     <tr data-bind="with:gdetails">
                        <td>
                           <select data-bind="options: eventschemas, optionsText: 'schema', value:eventschemacondition.schema"></select>

                         </td>

                    </tr>
                   </tbody>
               </table>
           <pre data-bind="text: ko.toJSON($data, null, 2)"></pre>
        </div>                
 </div> 
正如您所看到的,“eventschemacondition”中的“schema”为空,即使我可以在浏览器的DropDownList框中看到值

如有任何帮助,我将不胜感激


谢谢

您需要在
绑定中为
选择
调用
事件模式条件()

var-eventschemas=[{“schema”:“Test”},{“schema”:“other Test”}];
var AppScope=函数(){
函数EventSchemaCondition(数据){
this.schema=ko.observable(data.schema);
}
功能详细信息(数据){
this.eventschemacondition=ko.observable(data.eventschemacondition);
}
职能G(数据){
this.gname=ko.observable(data.gname);
this.gdetails=ko.可观察(data.gdetails);
}
函数GsViewModel(){
var self=这个;
self.g=ko.可观察(
新G({
啃咬:“,
gdetails:newgdetails({eventschemacondition:neweventschemacondition({schema:'})})
}));
}
应用绑定(新的GsViewModel());
}();

:非常感谢。。如果您能研究一下哪个是这个问题的延伸,我将不胜感激。。
 <script type="text/javascript">
        var eventschemas = [{ "schema": "Test"}, { "schema": "Another Test" }];

        var AppScope = function () {
             function EventSchemaCondition(data) {
                this.schema = ko.observable(data.schema);
                };
            function Gdetails(data) {
                this.eventschemacondition = ko.observable(data.eventschemacondition);
            };
            function G(data) {
                this.gname = ko.observable(data.gname);
                this.gdetails = ko.observable(data.gdetails);
            };
                function GsViewModel() {
                    var self = this;
                   self.g = ko.observable(new G({ gname: "", gdetails: new Gdetails({ eventschemacondition:new EventSchemaCondition({ schema: "" }) }) }));

                }
                ko.applyBindings(new GsViewModel());
          }();
    </script>
{
  "gname": "tttt",
  "gdetails": {
    "eventschemacondition": {
      "schema": ""
    }
  }
}