到目前为止,我正在制作一个ajax登录表格,这要归功于到目前为止一些用户的堆栈流程。
现在当我检查所有字段时,如果它响应输入被按下它工作正常,除非我选择提交按钮,它根据Chrome网络选项卡提交数据两次。
我认为它正在执行.click函数,就像.keycode函数一样。
如果键码输入为false,我怎么能在代码中说,我点击按钮执行该功能,或者如果它的真实,则不执行.click功能。
$(document).ready(function () {
$('#field').keyup(function (e) {
if(e.keyCode == 13) {
//If enter is pressed vailidate the form
$.ajax({
url: 'ajax/check.php',
type: 'post',
data: {
method: 'fetch'
},
success: function (data) {
$('.chat .messages').html(data);
}
});
};
});
$('#submit').click(function () {
alert('Do something here this is just a test');
});
});
答案 0 :(得分:0)
只需添加preventDefault并将false返回到keyup函数,如:
$('#field').keyup(function (e) {
if(e.keyCode == 13) {
//If enter is pressed vailidate the form
e.preventDefault();
$.ajax({
url: 'ajax/check.php',
type: 'post',
data: {
method: 'fetch'
},
success: function (data) {
$('.chat .messages').html(data);
}
});
return false;
};
});
当用户按ENTER键时,这将阻止表单提交。