我可以将表单绑定到Dojo数据存储吗?

时间:2011-08-23 19:36:10

标签: dojo

Dojo数据存储的所有文档似乎都指向数组或数据表的数据存储(例如,在网格中使用)。

Dojo数据存储是否适合表单数据?您可以将表单或事实上的单个输入字段绑定到Dojo数据存储吗?有没有关于此的示例文档?

澄清我的问题:我希望您可以通过dojo数据存储实现的双向更新和验证,而不仅仅是从表单中收集所有值。

或者,也许我在问错误的问题。也许数据存储不是我想要的。 Dojo是否为模型绑定提供了任何其他概念?

3 个答案:

答案 0 :(得分:3)

看起来我正在寻找的内容在下面的链接中有描述,但现在还没有。 (根据此TRAC票证:http://bugs.dojotoolkit.org/ticket/12314,仅在版本1.7中)。

这将构成Dojo的dojox.mvc包的一部分(参见http://svn.dojotoolkit.org/src/dojox/trunk/mvc/README),因此虽然它可能会被使用,但它仍在开发中并且正在进行实验。

http://doughays.dojotoolkit.org/patterns/data_bound_widgets.html

http://chrism.dojotoolkit.org/dojomvc/

答案 1 :(得分:2)

不,因为商店对存储这类信息没有意义。

您要做的是在数据存储中存储数百个表单。但你不会存储一个。

如果需要获取dojo.form.Form值,可以在窗体上调用getValues(),然后将其发送到服务器以进行保存。

  

dijit.byId( “形式”)的GetValues();

答案 2 :(得分:0)

好问题,像KnockoutJS这样的双向模型绑定如果能在具有国际化功能的dojo框架和验证功能中运行则会很好。

在KnockoutJS双向绑定工作中这样:

使用Javascript:

function AppViewModel() {
    this.firstName = ko.observable("Bert");
    this.lastName = ko.observable("Bertington");
}

//激活knockout.js ko.applyBindings(new AppViewModel());

HTML:

<p>First name: <input data-bind="value: firstName" /></p>
<p>Last name: <input data-bind="value: lastName" /></p>

似乎Knockout使用观察者模式进行双向模型绑定。它很好,但实际使用它不起作用。正如我所说,国际化功能是必需的。用户喜欢在自己的文化中输入数据。  我不使用KnockoutJS。

相关问题