下面的代码可以多次工作。请找我错误。
响应警报没有停止。
$(document).ready(function(){
$("input").keyup(function(e){
if(e.which == 13){
$('form').submit();
}
});
$('form').submit(function(){
var msgs = $("input").val();
$.post('message.php?action=sent&msg='+msgs,function(response){
document.getElementById('temp').reset();
alert(response);
});
return false;
});
});
最佳答案
尝试防止keyup处理程序中的默认设置:
$("input").keyup(function(e)
if (e.which == 13) {
e.preventDefault();
$('form').submit();
}
});
在表单的最后一个输入字段中按Return键时,默认操作是提交表单。因此,如果您不阻止默认设置,则它会根据您的代码提交,并且默认情况下也会提交。
您也可以摆脱keyup处理程序,因为它只是在执行默认操作。
另一种可能性是页面上有多个表单。
$('form').submit()
将提交所有文件,并且提交处理程序将为所有文件运行。如果您只想提交包含他们按下回车键的输入的表单,请使用:$(this).closest("form").submit();
同样,这是按Return键的默认行为。
关于javascript - javascript文档准备一遍又一遍,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48759682/