dojox/form/manager "Tried to register widget" error



这是我的HTML:

**<form action="http://localhost/so/users/login" method="post" accept-charset="utf-8" class="user_login_form" id="user_login_form" widgetid="user_login_form" data-dojo-type="dojox/form/Manager">
.
.
.
</form>**

*这是我的js代码*

<script="text/javascript">
require(
    ['dijit/registry','dojo/_base/array','dojo/parser','dojo/ready','dijit/form/TextBox','dijit/form/Button','dojox/form/Manager',
    ],
    function(registry,array,parser,ready,textbox,button

    ){
    // parse the dom
    parser.parse();
}); // close the dojo sandbox

</script>

这是控制台上的错误

已弃用:dojox.form.Manager::getDescendants((已弃用。请改用getChildren((。--将在版本:2.0 kernel.js:203中删除dojo/parser::parse((错误错误参数:未定义获取堆栈:函数(({[本机代码]}message:"尝试使用id=user_login_form注册小部件,但该id已注册"集合堆栈:函数(({[本机代码]}类型:未定义_proto_:设置错误.d

请在实际创建小部件的代码之前,在onLoad((/上尝试以下操作:

if (dojo.byId('user_login_form') != null) {
                        dojo.forEach(dijit.findWidgets(dojo.byId('user_login_form')), function (w) {
                            w.destroyRecursive();
                        });
                    }
                    dojo.destroy(dojo.byId('user_login_form'));
                    if (dijit.byId('user_login_form')) {

dijit.byId('user_login_form').destroy();
                }

由于您已经指定了将由注册表使用的id,因此widgetid看起来是多余的,实际上可能会导致错误。

最新更新