禁用HTML字段

时间:2012-07-12 16:21:18

标签: javascript dojo

所以我有两个相互排斥的表单输入字段(用户只能键入两个字段中的任何一个)。我在这些字段上使用onKeyUp事件来禁用彼此。
一旦用户键入数据并点击提交按钮,我就进行Ajax调用以刷新屏幕内容,此时键入字段仍包含在Ajax调用之前键入的数据,但另一个输入字段是不再禁用(因为onKeyUp事件从未触发)。
我尝试使用Dojo的addOnLoad事件,然后检查输入字段的长度,但这会在输入字段上抛出一个未定义的错误。
有关如何修复此方案的任何建议吗? PS:此页面没有正文标记,我也无法添加一个使用body onLoad事件。

1 个答案:

答案 0 :(得分:1)

我假设在Dojo中你有类似处理Ajax调用的方式

dojo.xhrPost({
    // The URL of the request
    url: "submit.php",
    // No content property -- just send the entire form
    form: dojo.byId("form"),
    // The success handler
    load: function(response) {
        messageNode.innerHTML = response;
    },
    // The error handler
    error: function() {
        messageNode.innerHTML = "Your ERROR message."
    },
    // The complete handler
    handle: function() {
        hasBeenSent = true;
    }
});

然后在完成处理程序 - handle上,它将在成功或错误时触发,您可以重新禁用输入