以下代码用于验证输入是否为blankt,然后通过Ajax提交表单。删除验证时,它的工作正常,但是当它到位时,preventDefault似乎没有效果。
$(document).on("keydown", "input[class='p']", function(e){
if (e.which == 13) {
if($(this).val() == ''){ \\\\ Validation
alert('The Field Empty');
return false;
}
e.preventDefault();
var theData = $("form").serializeArray();
var parentDiv = '#theDiv';
$.ajax({
type: "POST",
url: "functions.php",
data: theData,
cache: false,
success: function(data){
$(parentDiv).html(data);
}
})
}
});
我已经尝试将preventDefault移动到验证之上,但这也不起作用。 谁能发现我做错了什么?
由于
朱
编辑:编辑纠正错误,验证检查程序与正在讨论的问题无关。
答案 0 :(得分:1)
$(this).val('')
你应该放$(this).val() != ''
或者你没有测试但影响!!!这就是为什么你的验证必须破坏你的代码。
答案 1 :(得分:0)
感谢并感谢此解决方案转到TCHdvlp ...
$(document).keypress(function(event){
if (event.keyCode == 10 || event.keyCode == 13)
event.preventDefault();
});
$(document).on("keydown", "input[class='p']", function(e){
if (e.which == 13) {
if($(this).val() == ''){
alert('Field Empty');
return false;
}
var theData = $("form").serializeArray();
var parentDiv = '#theDiv';
$.ajax({
type: "POST",
url: "functions.php",
data: theData,
cache: false,
success: function(data){
$(parentDiv).html(data);
}
})
}
});