首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Ajax调用后将响应发送回php

Ajax调用后将响应发送回php
EN

Stack Overflow用户
提问于 2016-06-28 07:38:24
回答 3查看 585关注 0票数 0

假设我有一个名为form.php的页面。然后我点击了一个名为"add按钮“的按钮。此按钮触发由jquery函数检测到的事件。jquery函数对add.php进行ajax调用。

在add.php内部,有检查数据库中是否存在特定记录的代码。如果它确实发现该记录存在,我希望执行以下操作。

  • 向ajax发送一个响应字符串"exist“。
  • .done()函数中的ajax将执行一个提示,提示“此记录已经存在,您希望检查一下吗?”
  • 如果用户取消了提示符,就不会发生更多的事情,应该执行ajax调用。
  • 如果用户单击"ok",我希望php脚本得到通知,并使用来自form.php的数据执行一个update语句。

我怀疑这是不可能的,因为在收到来自php的响应之后,AFAIK没有办法让ajax返回到当前正在执行的php脚本。

我是对的还是有办法这样做?

EN

回答 3

Stack Overflow用户

发布于 2016-06-28 07:43:00

您必须向ajax请求中添加一个参数,比如overridetruefalse。默认情况下/第一个请求将其设置为false。然后add.php执行它的默认操作并返回exists

用户做出决定。如果他想重写,您可以使用override参数再次向true发送ajax请求。您的add.php会注意到这个参数,并做它必须做的任何事情。

使用已完成的回调将ajax处理程序封装在自己的函数中。这样,您就可以随意重用请求。很简单,不需要双重代码.

票数 1
EN

Stack Overflow用户

发布于 2016-06-28 07:42:52

第一个ajax调用的.done()函数在ajax调用成功完成时执行,所以当您的php脚本完全完成时执行。

如果您想做其他事情,则需要发出新的ajax请求。这可以是同一个或另一个脚本,发送不同的/新/附加参数。

请注意,如果没有完成第一个脚本,就必须确保不能调用第二个脚本,例如,通过设置和检查一个到期的会话变量。

票数 0
EN

Stack Overflow用户

发布于 2016-06-28 18:24:23

你可以做这样的事。

代码语言:javascript
运行
复制
 $.post('add.php',$(this).serialize())
.done(function(result){
 var r = confirm("This record already exist, do you wish to overright");
 if(result == 'exist'){
        if (r == true) {
        $.post('update.php',$(this).serialize()).done(function(r){
            console.log(r);
        });
    } else {
        return false;
    }
 }else{
    console.log(result)
 }

});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38069947

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档