1
我想從頁面加載中的restful wcf服務獲取數據,並綁定到下拉不工作。Knockout ObserableArray下拉綁定問題
function CreateItem(name, value) {
var self = this;
self.itemName = ko.observable(name);
self.itemValue = ko.observable(value);
};
function AppViewModel() {
var self = this;
self.titleList = ko.observableArray();
self.load = function() {
alert("click fired");
$.ajax({
url: "https://mydomain/RestfulService/Service1.svc/CreateData?name=venkat",
type: "POST",
cahce: false,
async: false,
data:'',
dataType: "jsonp",
success: function (data) {
for (var i = 0; i < data.length; i++) {
self.titleList().push(new CreateItem(data[i].Description, data[i].TitleID));
}
alert("success " + data);
},
error: function (error) {
alert("failed " + error);
}
});
};
};
<div>
<select data-bind="options: titleList(), optionsText: 'itemName', optionsValue: 'itemValue', value: selectedTitleValue, optionsCaption: 'Please choose'"></select>
</div>
<script type="text/javascript">
$(document).ready(function() {
var model = new AppViewModel();
model.load();
ko.applyBindings(model);
});
</script>
問題是,knockout數組正在填充正確的加載函數,但下拉不刷新更新的數據。我不明白問題在哪裏。請給出投入。
已驗證。 http://jsfiddle.net/zy2mD/刪除'ko'解除引用將解決您的問題。 – Origineil
非常感謝您的快速回復。它正在工作。 – user1837788
@ user1837788:如果它適合您,您可以將答案標記爲已接受。謝謝。 –