我目前正在使用DurandalJS,BreezeJS和KnockoutJS开发应用程序。
一切都很好,但是最简单的事情(我相信),我无法使它正常工作。
在我的Viewmodel中,我有一个currentCustomer,它是一个ko.observable。
通过 Breeze ,我得到了客户! currentCustomer(data.results[0].Customer());一切正常。如果我使用Google Chrome浏览器进行检查,则会看到该对象已被currentCustomer填充。
我想要的是以下内容:我有一个输入字段,并且有一个值数据绑定(bind),我试图将currentCustomer的名称绑定(bind)到此输入。但是我无法使它正常工作。这是可行的:

 <input data-bind="value: currentCustomer()" />
但是在输入字段中仅显示[Object object],因此currentCustomer(肯定是)中肯定有一些东西。
这是我尝试过但没有起作用的方法:
<input data-bind="value: currentCustomer().Name()" />
<input data-bind="value: currentCustomer().Name" />
<input data-bind="value: currentCustomer.Name()" />
<input data-bind="value: currentCustomer.Name" />
<input data-bind="value: currentCustomer()._latestValue().Name()" />
<input data-bind="value: currentCustomer()._latestValue.Name()" />
这是一个屏幕截图,因此您可以在 View 中看到这些值!
http://s22.postimg.org/62m21nnsx/problem_data_bind.png

最佳答案

您是否尝试过使用“with”?

<div data-bind='with:currentCustomer'>
<input data-bind="value: Name/Name()" />
</div>

关于javascript - 我无法使用 knockout JS进行数据绑定(bind),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16420198/

10-12 00:16