Php jQuery将参数从ajax加载页面传递到外部函数

Php jQuery将参数从ajax加载页面传递到外部函数,php,javascript,jquery,ajax,Php,Javascript,Jquery,Ajax,这个标题听起来可能让人困惑,但事实并非如此,我只是不知道如何解释它。因此,我的主页上有一个脚本,为我的网站的某个部分加载一个外部php文件。在这个php文件中,我需要在主javascript文件(加载它的文件)中调用一个带有参数的函数。我尝试了.bind(“单击”,参数1,参数2,加载函数),它的扩展版本和。单击({…}),但我无法让它工作。我该怎么做呢?我不想把我需要调用的代码放在php文件中,因为它正在调用另一个ajax请求(是的,我的站点非常ajax),我不想让人们觉得这么简单,我宁愿把它

这个标题听起来可能让人困惑,但事实并非如此,我只是不知道如何解释它。因此,我的主页上有一个脚本,为我的网站的某个部分加载一个外部php文件。在这个php文件中,我需要在主javascript文件(加载它的文件)中调用一个带有参数的函数。我尝试了
.bind(“单击”,参数1,参数2,加载函数)
,它的扩展版本和
。单击({…})
,但我无法让它工作。我该怎么做呢?我不想把我需要调用的代码放在php文件中,因为它正在调用另一个ajax请求(是的,我的站点非常ajax),我不想让人们觉得这么简单,我宁愿把它埋在我的javascript文件中。谢谢你的帮助!如果您需要更多信息,请告诉我。

您可能会说这并不令人困惑,但确实有一点。;-)我的回答基于以下事件流:

  • Ajax调用是从主JS中定义的函数进行的
  • PHP对给定的参数执行操作,执行“操作”,并返回结果
  • 返回的结果可能不包含更多要执行的脚本,但是,根据返回结果的内容,会执行更多脚本
  • 这句话:“我宁愿把它埋在我的javascript文件中”对我来说是个危险信号。如果有人想知道你的网站在做什么,他们会弄清楚脚本是否在缩小的JS文件中。我认为返回脚本实际上会更安全,因为范围会受到限制

    也就是说,我无论如何都不会返回脚本。这个问题的前提就是它自己的答案

  • 进行Ajax调用,以查询字符串或POST数据的形式将参数传递给PHP
  • PHP处理参数并返回响应
  • Ajax调用的success函数获取响应(可能是用JSON编码的,以便于处理),然后在主应用程序中启动一个函数调用
  • 老实说,我不知道
    绑定
    点击
    失败在哪里,甚至无法将其考虑在内。您是否无法首先绑定第一个Ajax调用的单击?我想如果你的网站是Ajax的,你已经知道怎么做了,不是吗

    [回复评论]

    如果您的PHP生成并返回JSON,您可以使用它执行任何操作:

    {
        "content": "<div>Some HTML</div>",
        "action": "append_and_refresh",
        "recordsDeleted": 5
    }
    

    这是一个有意简化的例子,但希望你能理解

    首先,感谢您的回复!第二,您确实提出了一个很好的观点,即如果他们想要查看代码,他们会这样做。您的答案的问题是,我的PHP不只是回显一些返回文本/变量。它返回一些HTML,然后将其附加到容器中。如何将多个返回发送回用户,附加一个并将另一个存储在变量中?这是我最近的主要问题。我只是想让请求生效,并使用了当时我能想到的任何方法。现在我想起来了,它们在这种情况下毫无意义,对结果没有任何影响。添加了一个愚蠢的示例,说明如何使用JSON响应。非常感谢您的帮助。你的榜样太棒了!
    success: function(data) {
      $('#someDiv').html(data.content);
      if(data.action == "append_and_refresh") {
        doAppend();
        doRefresh();
      }
      recordsDeleted += data.recordsDeleted
    }