Php Ajax表单提交&;Javascript确认错误
我有一个通过Ajax提交的表单,目前它运行得非常好。我试图添加一个确认选项,通过添加以下行来允许/阻止Ajax提交:Php Ajax表单提交&;Javascript确认错误,php,javascript,jquery,Php,Javascript,Jquery,我有一个通过Ajax提交的表单,目前它运行得非常好。我试图添加一个确认选项,通过添加以下行来允许/阻止Ajax提交: var answer = confirm('Submit now?'); return answer // answer is a boolean if(answer) { ... } 下面是我的全部功能,如您所见,单击submit按钮即可启动。当用户在对话框中选择“确定”时,会发生此错误。整个页面被刷新,任何单个Ajax警告都会在空白屏幕的顶部返回。
var answer = confirm('Submit now?');
return answer // answer is a boolean
if(answer) { ... }
下面是我的全部功能,如您所见,单击submit按钮即可启动。当用户在对话框中选择“确定”时,会发生此错误。整个页面被刷新,任何单个Ajax警告都会在空白屏幕的顶部返回。在正常情况下,如果没有此确认代码,错误消息将显示在表单底部的div#result标记中
$("#submitbtn").click(function() {
var answer = confirm('Submit now?');
return answer // answer is a boolean
if(answer) {
$('#result').html('<img id="loading" src="images/loading.gif" />').fadeIn();
var input_data = $('#create_po').serialize();
$.ajax({
type: "POST",
url: "<?php echo "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; ?>",
data: input_data,
success: function(msg){
$('#loading').remove();
$('<div>').html(msg).appendTo('div#result').hide().fadeIn('slow');
}
});
return false;
}
});
$(“#submitbtn”)。单击(函数(){
var answer=确认(“立即提交”);
返回答案//答案是布尔值
如果(回答){
$('#result').html(''.fadeIn();
var input_data=$('#create_po')。serialize();
$.ajax({
类型:“POST”,
url:“”,
数据:输入_数据,
成功:功能(msg){
$(“#加载”).remove();
$('').html(msg).appendTo('div#result').hide().fadeIn('slow');
}
});
返回false;
}
});
如何实现不刷新屏幕的确认对话框?如有任何建议,将不胜感激。谢谢 您正在执行
返回答案。这在这里没有任何意义
它将停止JavaScript函数,并返回布尔值。去掉这条线,就可以了
此外,如果确认框为false,则添加此选项以使您的提交不会触发;)
请勿使用此选项:
<input type="submit">
使用以下命令:
<input type="button">
“提交”按钮会自动提交表单。常规按钮不起任何作用。您可以使用它来侦听单击,然后提交表单,也可以不提交。如果您返回答案
这一行后面的内容将不会执行。不返回答案。为什么不使用jQueryUI对话框来显示确认@蝎子王子会让他包含另一个完整的javascript库,但他没有。如果没有真正的理由,不包括;)确认框就可以了fine@Topener完全同意,只是确认提示(如javascript警报)会锁定浏览器,不允许用户移动到其他选项卡。它们通常会导致糟糕的用户体验。使用对话框,不一定是jqueryui,是一种更优雅的方式,IMHO。但是,如果只在一个页面中,可能最好使用确认提示。更不用说如果是这种情况,那么您可以覆盖submit
功能。如果您使用JavaScript提交表单,则不应使用submit按钮;你应该用按钮。这是一种最佳做法。不,我的回答并没有解决他的问题,但你不应该无缘无故地启用一个按钮然后禁用它。我说的哪部分是不正确的?请解释或撤销否决票。提交按钮是提交表单的HTML表单元素。你是说这是不真实的吗?你是对的,先生。非常感谢。工作得很有魅力!
<input type="button">