textbox onchange验证事件可防止单击按钮

时间:2012-05-07 17:51:40

标签: javascript vb.net

我有一个带有倍数文本框的表单。其中一个文本框有我制作的验证器。 Basicaly,验证器继承自CustomValidator类,并使用javascript函数验证文本框的内容。

javascript功能非常简单

function myFunction(sender, args) {
    if (condition) {
        args.IsValid = true;
    }
    else {
        args.IsValid = false;
    }
}

如果条件为false,则会动态显示错误消息。

因此,当我在文本框中输入无效数据时会出现问题,因为数据无效,消息显示。现在一切都按预期工作。但是,当我回到我的文本框中以更正数据时,当我点击提交按钮时,它似乎触发了验证器的onchange事件,从而隐藏了错误消息但没有点击按钮。

知道为什么会发生这种情况以及如何解决这个问题?

由于

1 个答案:

答案 0 :(得分:0)

回答我在评论中所说的问题

我解决了我的问题。事情是因为我的错误消息是动态的,当错误消息是shwon / hidden时,提交按钮在我的页面上“移动”。因此,当我点击发送按钮时,错误消息将消失,“移动”按钮在其他地方然后我点击的位置,使其不会实际点击按钮。

一些补充信息:似乎验证发生在mouseDown事件上,并且按钮单击发生在mouseUp事件上。我通过单击按钮,按住鼠标按钮,指向按钮并释放鼠标按钮来测试它,然后clic工作。