我想通过点击输入类型=文件上的输入键来阻止表单提交。我搜索了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>
答案 0 :(得分:0)
我认为我没有清楚地理解你的问题
$(document).ready() {
$('input:file').keypress(function() {
//your operations
});
}
(OR) 一旦尝试这个,希望它可以帮助你
$(function(){
$("#frm_CsvImp_import").on("change", "#INPUTTYPEID( or.CLASSNAME)", function(){
//do your operations
});
});
答案 1 :(得分:0)
它适用于我(在文件输入,firefox上的普通html,chrome(upToDAte)和jquery 1.11):
$("input[type=file]").keypress(function(ev) {
return false;
//ev.preventDefault(); //works as well
});
另请注意,不只是“输入”键触发浏览器对话框(条形空间也会这样做)。