使用dojo工具包启用/禁用按钮

63lcw9qa  于 2022-12-16  发布在  Dojo
关注(0)|答案(1)|浏览(178)

我已经用HTML声明了一个按钮,我想使用javascript和Dojo工具包动态地启用/禁用它。
我编写了以下代码,这应该是一个最小的工作示例:

<html>
<head>
<script language="JavaScript" type="text/javascript">
require(["dojo/dom", "dojo/on", "dojo/request", "dojo/domReady!"],
        function(dom, on, request){
            on(dom.byId("password"), "keyup", function(evt){
                request.get("/PasswordChecker",
                        {
                            query: {
                                user: document.getElementById("username").value,
                                pass: document.getElementById("password").value
                            }
                        }).then(
                    function(response){
                        if(strength === "STRONG") {
                            dijit.byId("ok").setAttribute('disabled',false);
                        }
                    }
                );
            });
        }
    );
</script>
</head>

<body>
<input id="username" type="text"/>
<input id="password" type="text"/>
<button id="ok" dojoType="dijit.form.Button" type="submit" disabled="disabled">OK</button>
</body>
</html>

换句话说,我希望用户输入一个密码,然后我会使用 AJAX 来检查它是否足够强大,如果是这样,我想启用确定按钮。

niwlg2el

niwlg2el1#

我将代码重写如下:

function updateOkButton(strength) {
    if(strength === "STRONG") {
    //  domAttr.set(okButton, 'disabled', false);
        require(['dojo/on', 'dojo/dom', 'dojo/dom-attr'],
        function (on, dom, domAttr) {
            var okButton = dom.byId("ok");
            domAttr.set(okButton, 'disabled', false);
        });
    }
}

相关问题