【问题标题】:How do I map a JSON object to form using Dojo Toolkit?如何使用 Dojo Toolkit 将 JSON 对象映射到表单?
【发布时间】:2013-12-17 15:50:20
【问题描述】:

Dojo 是否支持 JSON 对象到 dijit/form/Form 的映射? 我很清楚this,但我找不到任何详细的例子来说明如何做到这一点。

【问题讨论】:

    标签: javascript dojo


    【解决方案1】:

    所以如果我理解得足够好(问题不是那么详细),您想使用一个对象并且该对象的所有属性都应该映射到表单中的字段?嗯,这可以使用 getValues() 和 setValues() 函数。

    例如:

    var myObject = {
        test1: "test5",
        test2: "test6",
        test3: "test7",
        test4: "test8"
    };
    registry.byId("form").setValues(myObject);
    

    可以使用适当的 getter 来检索相同类型的对象,例如:

    registry.byId("form").getValues();
    

    我还用JSFiddle做了一个例子。

    【讨论】:

    • 您好,感谢您的回答。它有很大帮助!还有一件事,注册表也可以处理嵌套对象吗?如果有怎么办?
    • 你能再解释一下吗?我认为您误解了registry 的功能。注册表检索小部件,因此getValues 或setValues 函数不在registry API 中,但它是dijit/form/Form API 的一部分(它是您从注册表中检索的对象)。
    • 话虽如此...所使用的对象将表单小部件上的属性名称映射为具有相同的name 属性。所以我认为不允许嵌套(如果这是你的问题)。
    • 有趣的是,我发现它支持嵌套对象。这里看看我更新的 JSFiddle:JSFiddle.
    • 我也有同样的感觉。问题是没有营销团队(我认为),因此成为流行的唯一可能方法是拥有广泛的用户群来传播这个词。要拥有庞大的用户群,您需要一个有吸引力的文档,而 Dojo 显然缺乏这种文档。我经常听说 Dojo 有正确的文档记录,但这个问题只是证明它不是。所以唯一使用 Dojo 的人是那些自己深入挖掘它的人(没有文档),但这意味着它背后没有大社区,所以这个词没有传播得那么快。
    【解决方案2】:

    DOJO 插件在 struts 2.1.x 中已弃用 - http://struts.apache.org/release/2.1.x/docs/ajax-tags.html

    最好使用 JSON 的注解来形成绑定,检查这个 - How to bind JSON to Java object in Struts2 using struts2-json-plugin

    【讨论】:

    • JSON 到 Java?我问的是客户端,而不是服务器端。 Dojo Toolkit 是一个类似于 JQuery 的客户端库,对吧?
    • Correct Dojo Toolkit 是一个库,您是否使用 JSP 进行 Web 开发?
    【解决方案3】:

    Dojo 有一个 MVC 包,用于将元素绑定到 JSON 值。 dojo/mvc/at 将小部件与 json 绑定

    http://dojotoolkit.org/reference-guide/1.9/dojox/mvc.html

    【讨论】:

    • 嗯..我只是不明白如何将其与我的情况联系起来。也许我太愚蠢了。我只是想将JSON Object 设置为From。你能帮我看看吗?
    • 如果这就是你想要的,那么这就是矫枉过正。这是为了将 JSON 对象与所​​有小部件值进行 2 路同步。它就像 knockout.js
    猜你喜欢
    • 2014-11-02
    • 2019-05-27
    • 1970-01-01
    • 2012-04-16
    • 2018-05-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多