【问题标题】:How to change a HTML element to DOJO widget programmatically?如何以编程方式将 HTML 元素更改为 DOJO 小部件?
【发布时间】:2014-08-22 05:47:45
【问题描述】:

我的场景如下:

我目前正在使用 DOJO 框架 1.9,以及 BIRT 报告工具 4.2。 BIRT 在页面中(动态)创建一个表单元素,所有输入字段(来自dojo)都在这个表单下。 当我尝试验证表单(提交时)时,我不能这样做,因为表单不是 DOJO 表单。

那么,有什么办法可以通过编程方式将此 HTML 表单转换为 DOJO 表单 (dijit.form)?

或者,一般来说,是否可以通过编程方式将 HTML 元素更改为 DOJO 小部件?

【问题讨论】:

    标签: html dojo birt dojox.grid.datagrid dijit.form


    【解决方案1】:

    您可以使用 dojo 实现这两种解决方案。您可以以编程方式或声明方式创建 Dojo 小部件。您可以通过编程将任何 HTML 元素转换为 DOJO 小部件。 例如,由 Id 以编程方式创建的按钮。

    <body class="claro">
        <div>
          <!--HTML Button element with id ="btn2"-->
            <button id="btn2"></button>
        </div>
        <script>
            require(["dijit/form/Button", "dojo/domReady!"], function(Button) {
                var button2 = new Button({
                    iconClass: "dijitIconNewTask",
                    showLabel: false,
                    label: "Click Me!", // analogous to title when showLabel is false
                    onClick: function(){ console.log("Second button was clicked!"); }
                }, "btn2");//this is the id of HTML element.
    
                button2.startup();
            });
        </script>
    </body>
    

    View Programmatic Demo Here

    您可以通过同样的方式以编程方式创建任何 Dojo 小部件。

    【讨论】:

    • 这将替换原始元素。我想保留前一个的属性和属性。我怀疑这是否可能......?
    猜你喜欢
    • 1970-01-01
    • 2019-04-04
    • 1970-01-01
    • 2020-01-16
    • 1970-01-01
    • 2012-02-29
    • 2021-06-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多