【问题标题】:Calling PHP file from jQuery not working [closed]从jQuery调用PHP文件不起作用[关闭]
【发布时间】:2012-11-28 15:42:09
【问题描述】:

我正在尝试通过某个链接的 onClick 事件来执行整个 PHP 文件。

<a onClick="phpSubmit();" class="submitButton">Submit</a>

成功调用此 jQuery 函数

function phpSubmit()
{
    alert('submitting');

    $.post("/submit.php");

    alert('submitted'); 
}

执行PHP文件“submit.php”失败,在同一目录下。

有什么想法吗?

我尝试过 $.ajax、$.get 和“submit.php”以及“/submit.php”。我不知道为什么这不起作用,如果您认为我做错了什么,请重新发布 $.ajax 内容。

编辑:

总是小事,我在导入 jQuery 脚本时打错了一个字符,这就是 $.ajax 未定义的原因。

上述方法有效

【问题讨论】:

  • 您是否尝试过通过 Firebug 检查请求(NET)?
  • 您是否尝试过使用 $.ajax() 捕获错误?
  • 使用 Google Chrome(或带有 Firebug 的 Firefox)尝试:右键打开检查元素>>标签网络>>重新加载>>触发该功能。您将看到您尝试发送的内容的完整路径。
  • 啊,是的,有一个错误:Uncaught ReferenceError: $ is not defined Occuring on the $.ajax line
  • 您的 HTML 代码中是否包含 jquery.js?

标签: php jquery html call execute


【解决方案1】:

我更喜欢使用 $.post 而不是使用 $.post,并且发现它更容易调试,而是使用类似的东西:

$.ajax({
   dataType: 'html',
   type: 'POST',
   url: 'submit.php',
   cache: false,
   data: 'foo=bar',
   error: function(e){
      alert(e.status);
   },
   success: function(response){
      alert(response);
   }
});

我还建议删除 submit.php 前面的 / - 如果它在同一目录中,则不需要。

【讨论】:

    【解决方案2】:

    如果无法将数据发布到 PHP 文件,您会收到错误消息。使用 $.ajax();

              error : function(XMLHttpRequest,textStatus,ErrorThrown)
              {
                    alert(textStatus);
              }
    

    【讨论】:

      【解决方案3】:

      使用不带斜线的$.post("submit.php");

      【讨论】:

        猜你喜欢
        • 2013-02-08
        • 1970-01-01
        • 1970-01-01
        • 2016-04-18
        • 1970-01-01
        • 1970-01-01
        • 2018-05-09
        • 1970-01-01
        • 2018-02-27
        相关资源
        最近更新 更多