我試圖顯示基於的真或假的表值的值顯示值。例如,如果值爲真,那麼我希望它說支持,如果它是假的,那麼我希望它說不支持!這是我的html代碼淘汰賽JS if語句根據布爾數據類型
<p><input type="text" data-bind="value: Support" /></p>
的Java Script代碼
$(function() {
dm.viewModel = function() {
var clients = ko.observableArray(),
selectedClient = ko.observable(),
clientChanged = function() {
$.getJSON(dm.WebServices + "/dm/get/clientinfo?client=" + encodeURIComponent(selectedClient()), function(data) {
if (data != null) {
dm.viewModel.Name(selectedClient());
dm.viewModel.Support(data[0]['Support']);
}
})
$('#divClientData').show();
},
LoadClients = function() {
$('#divClientData').hide();
$.getJSON(dm.WebServices + "/dm/get/clientlist", function(data) {
$.each(data, function(key, val) {
clients.push(val);
});
});
},
Name = ko.observable(),
Support = ko.observable(),
return {
Name: Name,
Support: Support
};
}();
ko.applyBindings(dm.viewModel);
dm.viewModel.LoadClients();
})
您的第二個解決方案將不起作用,Support變量需要()以後才能正確計算。無論如何,if綁定更直接,因爲它是爲此目的而創建的。 –
感謝您對Support()的修改。我更喜歡採取這樣的方法,即個人額外標記是浪費標記(而不是非常乾燥),但取決於您需要去的地方。 –
我使用了ko.computed,我得到這個錯誤 - 未捕獲的錯誤:除非指定'寫入'選項,否則無法將值寫入ko.computed。如果您想讀取當前值,請不要傳遞任何參數。 – BrianMichaels