Jquery 通过单击输入类型-文件上的enter键禁用表单提交

Jquery 通过单击输入类型-文件上的enter键禁用表单提交,jquery,forms,jsp,enter,Jquery,Forms,Jsp,Enter,我想通过点击输入类型=文件上的enter键来防止表单提交。我搜索了jquery脚本来完成它。输入类型=文本是可以的,但如果点击输入类型文件,则注销后会显示登录页面。我正在使用jsp和jquery。我的浏览器也是IE9。我的代码有问题吗 jquery: $(function(){ $(window).keydown(function(event){ if(event.keyCode == 13) { event.preventDefault();

我想通过点击输入类型=文件上的enter键来防止表单提交。我搜索了jquery脚本来完成它。输入类型=文本是可以的,但如果点击输入类型文件,则注销后会显示登录页面。我正在使用jsp和jquery。我的浏览器也是IE9。我的代码有问题吗

jquery:

$(function(){
    $(window).keydown(function(event){
        if(event.keyCode == 13) {
            event.preventDefault();
            //$('#fil_CsvImp_refer').click();
            return false;
        }
    });
    $("input[type=text]").keypress(function(ev) {
        if ((ev.which && ev.which === 13) ||
            (ev.keyCode && ev.keyCode === 13)) {
            return false;
        } else {
            return true;
        }
    });
    $("input[type=file]").keypress(function(ev) {
        if ((ev.which && ev.which === 13) ||
            (ev.keyCode && ev.keyCode === 13)) {
            return false;
        } else {
            return true;
        }
    });
});
jsp:

<s:form action="" method="POST" name="frm_CsvImp_import" id="frm_CsvImp_import"
enctype="multipart/form-data">
<s:file key="fil_CsvImp_refer" name="fil_CsvImp_refer" cssClass="mediuminput" accept=".csv" />
<input type="button" class="" value="submit"/>
</s:form>
我想我不太明白你的问题

或 一旦尝试了这个,希望它能帮助你

$(function(){

$("#frm_CsvImp_import").on("change", "#INPUTTYPEID( or.CLASSNAME)", function(){

//do your operations
});

});

它在文件输入、firefox上的纯html、chrome Update和jquery 1.11中对我有效:

     $("input[type=file]").keypress(function(ev) {
               return false;
               //ev.preventDefault(); //works as well

     });

还要注意的是,不仅enter键触发浏览器对话框barspace,js控制台还会显示什么吗?这是什么意思:它退出并显示登录页面给出一些上下文?我的意思是我在输入类型-文件上按了entry键,登录JSP页面在退出后显示。在重新启动eclipse并清除IE9上的缓存后,我的jquery工作正常。顺便问一下,酒吧空间是什么?如果可能的话,请给我解释一下。提前谢谢。对不起,是一个打字错误,我想在键盘上写空格键。如果仅按enter键进行检查,则代码将起作用,但空格键也会像enter键一样触发“浏览文件”对话框。
     $("input[type=file]").keypress(function(ev) {
               return false;
               //ev.preventDefault(); //works as well

     });