0

我的 json 数据是

{"person":
        [
        {"Name":"Name1",
        "City":"1",
        "PostCode":1234
        },
        {"Name":"Name2",
        "City":"2",
        "PostCode":12
        }]
}

我的用户界面是,

<tbody id="container" data-bind="foreach: person">

                        <tr>
                            <td>
                                <input id="Name" style="width: 100px" type="text" data-bind="value:Name" class="dynamic" />
                            </td>
                            <td>
                                <select id="City" style="width: 100px" data-bind="value: City" class="dynamic" >                            
                                    <option value="0">NY</option>
                                    <option value="1">NJ</option>
                                    <option value="2">CA</option>                                 
                                </select>
                            </td>
                            <td>
                                <input id="PostCode" disabled="disabled" style="width: 100px" type="text" data-bind="value: PostCode, enable: City() == '0' || City() == '1'"" class="dynamic"/>
                            </td>

<select id="City" style="width: 100px" data-bind="value: County" class="dynamic" >                            
                                <option value="0">Test0</option>
                                <option value="1">Test1</option>
                                <option value="2">Test2</option>                                 
                            </select>
                               </td>
                        </tr>
                    </tbody>

我的视图模型是,

  <script type="text/javascript">
  var jsonData = {};
    $.getJSON("test.json", function (data) {
        jsonData = ko.mapping.fromJS(data);       
        ko.applyBindings(jsonData);
    }
);
</script>

我需要做的是,当我更改下拉文本时,我必须根据所选城市更改我的县下拉列表。我的下拉文本不是来自我的 json。我尝试使用“订阅”选项。任何人都可以帮助我吗?

4

1 回答 1

3

您可以在邮政编码文本框上使用启用绑定,例如:

<td>
     <input id="PostCode" disabled="disabled" style="width: 100px" type="text" 
      data-bind="
          value: PostCode, 
          enable: City() == '1' || City() == '2'" 
     class="dynamic"/>
</td>
于 2013-04-16T09:22:28.317 回答