我有两个kendoDropDownList
使用级联的网页。第一个是州,第二个是城市。当您选择一个州时,您可以从第二个城市DropDownList
中进行选择。如果我使用鼠标选择它们,这将非常有效。
问题是当我尝试将一些数据绑定到这些 DropDownLists更新State而不是City时。
这是我页面的 HTML:
<div id="container">
<input id="state" name="state" data-bind="value: state"/>
<input id="city" name="city" data-bind="value: city"/>
</div>
这是 JavaScript:
var state = $("#state").kendoDropDownList({
dataTextField: "state",
dataValueField:"state",
dataSource: {
serverFiltering:true,
data: states
},
change: function () {
console.log("state changed");
}
}).data("kendoDropDownList");
var city = $("#city").kendoDropDownList({
autoBind: false,
dataTextField: "city",
dataValueField:"city",
cascadeFrom: "state",
dataSource: {
serverFiltering:true,
transport: {
read:function (operation) {
var ds = cities [state.value()];
if (ds) {
return operation.success(ds);
} else {
return operation.success(["N/A"]);
}
}
}
}
}).data("kendoDropDownList");
如果我使用以下代码绑定数据:
kendo.bind($("#container"), { state:"California", city: "Berkeley" });
除非State DropDownList
已经包含California
它不会设置city
为的值Berkeley
。
似乎 usingbind
不会触发Stateschange
中的事件,然后City不会重新加载新State的Cities。 DropDownList
DropDownList
您可以在http://jsfiddle.net/OnaBai/QUhEX/3/中找到此代码
我应该如何使用MVVM绑定的级联?