为什么AJAX成功调用中的代码不起作用? [英] Why is code in AJAX success call is not working?
本文介绍了为什么AJAX成功调用中的代码不起作用?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个AJAX脚本,可将数据从表单插入MySQL数据库.这是AJAX.
I have an AJAX script to insert data from a form to MySQL database. This is the AJAX.
<!-- SUBMIT FORM VIA AJAX -->
$("#f_product").on('submit',function(event){
event.preventDefault();
data = $(this).serialize();
$.ajax({
type: "POST",
url: "<?php echo site_url('con_product/ins_product'); ?>",
data: data
}).success(function() {
alert("Products list is ready to be printed");
window.open("<?php echo site_url('con_product/print_product'); ?>","_blank");
window.open("<?php echo site_url('con_product/form_product'); ?>","_self");
});
});
<!-- END SUBMIT FORM VIA AJAX -->
AJAX脚本成功将表单中的数据插入数据库.但是以某种方式,成功的脚本无法正常工作.为什么?
The AJAX script successfully insert data from the form to database. But somehow, the script on success is not working. Why?
此AJAX的行为是:
- 将数据插入数据库-成功
- 显示提醒
- 打开新页面以进行打印.
- 将当前页面刷新为新表单.
推荐答案
success
是callback
函数的名称,而不是promise
.
The success
is the name of the callback
function and not the promise
.
您应该使用:
$.ajax({
type: "POST",
url: "<?php echo site_url('con_product/ins_product'); ?>",
data: data,
success: function() {
alert("Products list is ready to be printed");
window.open("<?php echo site_url('con_product/print_product'); ?>","_blank");
window.open("<?php echo site_url('con_product/form_product'); ?>","_self");
}
});
或done
承诺:
$.ajax({
type: "POST",
url: "<?php echo site_url('con_product/ins_product'); ?>",
data: data
}).done(function() {
alert("Products list is ready to be printed");
window.open("<?php echo site_url('con_product/print_product'); ?>","_blank");
window.open("<?php echo site_url('con_product/form_product'); ?>","_self");
});
这篇关于为什么AJAX成功调用中的代码不起作用?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文