Keypress不在IE中工作(Keydown和Keyup发布表单)

时间:2016-02-08 10:20:08

标签: javascript jquery validation keypress

我正在以一种形式工作。我在其中使用了validate插件来显示验证消息。如果用户按下回车键,我必须验证表格并显示该名称是否已存在。

$('#name').bind("keypress", function (e) {
    $("#valid_name").parent("span").removeClass("has-error");
    $("#valid_name").text("");
    if (e.keyCode == 13) {
        e.preventDefault();
        Validate();
        return false;
    }
});

这段代码在chrome和firefox中很好用。我需要清除我手动显示的验证消息,而不使用插件。但这个事件并没有在IE中触发。 如果我使用keydown / keyup,将发布表单而不显示验证消息。因此,门户网站中将添加重复的名称。

有人可以建议修复这个问题吗?

2 个答案:

答案 0 :(得分:0)

如果条件允许,请在外面使用e.preventDefault()。

答案 1 :(得分:0)

使用jQuery,event.which应该适用于所有情况。您甚至可以从文档页面测试它在您的浏览器中的工作情况。

如果您想深入了解详情,that page有很多信息,特别是对于较旧的IE版本,还包括nice test script