我有一个表格,要求提交如下
<form action="" method="post" id="member_form" onsubmit="return json_add('member','<?php echo ($admin->getnew_id()); ?>','0','slider_form');">
我的问题是从另一个函数类提交表单之前先获取$ new_id。 这不起作用 它会继续运行功能getnew_id()并在保存之前生成ID 我需要执行以下步骤。
提交后,需要执行以下操作。 一种。获取新的ID = $ new_d b。然后
返回json_add('member','','0','slider_form');“>
我尝试了以下操作,但不起作用
$("form").submit(function(){
$.ajax({
url:"lastid.php",
type:'POST',
success:function(response) {
var $new_id = $.trim(response);
return json_add('member-add',$new_id,'0','slider_form');
alert("Submitted");
}
});
答案 0 :(得分:0)
问题似乎出在第三步。
您应该做的是阻止表单提交并在Ajax中处理它。
onsubmit="return false"
阻止表单提交接下来,用ajax处理提交
$("form#member_form").submit(function(){
$.ajax({
url: "lastid.php",
type: "POST",
data: { // this is where your form's datas are
"json": json_add('member-add',$new_id,'0','slider_form'),
"key": $("form#member_form").serialize()
},
success: function(response) {
var $new_id = $.trim(response);
alert("Submitted");
// alerting here makes more sense
}
// return json_add('member-add',$new_id,'0','slider_form');
// returning here do nothing!
});
您可以阅读有关在jQuery here中使用ajax的更多信息