這似乎是使用淘汰賽的最基本部分,我不確定它爲什麼不起作用,但由於某種原因,我的5個淘汰賽中的2個守住了他們的新價值。Knockout Observable在給定新值時不會更新
在模型的建立:
self.CProviderIdentifier = ko.observable();
self.ReferringProviderIdentifier = ko.observable();
self.BillableCareProviderIdentifier = ko.observable();
self.ServiceLocationIdentifier = ko.observable();
self.PracticeLocationIdentifier = ko.observable();
內的AJAX調用,它返回一個JSON對象內部的一些項目,我提取的信息相關的塊,並把它們放到正確的觀察到:現在
visitModel.CProviderIdentifier(data.CareProviderIdentifier);
visitModel.ReferringProviderIdentifier((data.ReferringProviderIdentifier == null ||
data.ReferringProviderIdentifier == "undefined") ? 0 : data.ReferringProviderIdentifier);
visitModel.BillableCareProviderIdentifier(data.BillableCareProviderIdentifier);
visitModel.PracticeLocationIdentifier(data.PracticeLocationIdentifier);
visitModel.ServiceLocationIdentifier(data.ServiceLocationIdentifier);
,如果沒有他們的工作,這會使(部分)的意義,但只有CProviderIdentifier和ReferringProviderIdentifier沒有數據。在進入設置屬性之前,我已經在斷點處檢查了數據,並且數據的值是1003和0,但是兩個觀測值未定義爲上面的代碼塊。
我的工作得到一個搗鼓這方面的工作:https://jsfiddle.net/bz3mq6z9/
你確定你沒有在你的'data'對象錯字?你可以嘗試:'var temp = data.CareProviderIdentifier; visitModel.CProviderIdentifier(temp);'並在調試器中觀察'temp'? – Amit
這就是我的想法,CareProvider的數據是1003,ReferProvider的數據是我的測試項目。 –
如果你輸入一個靜態值會發生什麼,比如說:'visitModel.CProviderIdentifier(12345);'? – Amit