我有一个ViewModel,里面有一个可观察对象。每当我点击一个按钮,我用ajax填充这个观察点:敲除文本绑定到json对象
$.ajax({
url: '/Contracts/Details/' + id,
dataType: 'json',
type: 'GET',
success: function (data) {
self.showContractDetail(true);
self.contractDetail(data.contract);
alert(self.contractDetail().Partner.Surname);
}
});
该警报显示正确的值。但在我的HTML我有:
<h2>contract number <span data-bind="text: contractDetail.ContractNumber"></span></h2>
<h4>partner: <span data-bind="text: contractDetail.Partner.Surname"></span></h4>
但没有显示。如果我用text: contractDetail().
替换text: contractDetail.
,则只显示第一个绑定。那就是:它显示contract number: 236578
和partner: <empty>
。如果我评论data-bind="text: contractDetail().ContractNumber"
那么会出现姓氏。
任何帮助,为什么发生这种情况?我不想将contractDetail绑定到我的viewModel。我希望我的viewModel包含具有复杂合同细节的observable。
非常感谢你。它是这样工作的。 – gong 2014-10-27 12:28:37