【问题标题】:Simple jquery ajax php request简单的 jquery ajax php 请求
【发布时间】:2013-04-12 23:21:34
【问题描述】:

我正在对一个 php 文件进行基本的 jquery ajax 调用,但似乎无法弄清楚它为什么不起作用。任何帮助表示赞赏。 Fiebug 似乎没有显示任何 ajax 或 XHR 操作正在进行。我不想刷新页面而只执行 ajax 调用。谢谢。

JS

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"</script>
<script>
function getData(url_param){
    $.ajax({
        type: 'get',
        url: 'data.php',
        data: {url_param:url_param},      
        success: function(data) {
            $('#data').html(data);        
        }
    });
};

$('#clickMe').click(function(e){
    e.preventDefault();
    getData(2);
});
</script>

HTML:

<div><a id='clickMe' href='data.php?url_param=url_param'>CLICK ME TO RUN PHP</a></div>
<div id="data"></div>  <!-- divto show result -->

PHP:

<?php

if($_GET['url_param']){
    echo "simple ajax call";
} 

?>

【问题讨论】:

  • getGata 不是函数。
  • getGata /= getData ^^
  • href 是否可能与 onClick 冲突?我认为您可以完全从锚中删除 href,只需让 onClick 进行 AJAX 调用
  • 感谢您的更正。我对错字进行了更改,但还没有取得进展。

标签: php jquery ajax call


【解决方案1】:

(已修改?)JavaScript 会阻止您的代码工作,因为您没有关闭 jQuery 源代码上的尖括号,它应该是:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

其中一个 cmets 声明您不应该在锚点中包含 href,但由于您忽略了默认值,因此不会触发(假设在用户的浏览器中启用了 JS)。

最后,我认为

return false;

应该真的在函数里面

getData(2);

但由于我们忽略了默认值,因此锚不应尝试去任何地方或重新加载。

【讨论】:

    【解决方案2】:

    您必须在 onload 函数中绑定事件。最常见的做法是:

    $(document).ready(function(){
    
      $('#clickMe').click(function(e){
           ...
      });
    
    });
    

    您还应该在活动的最后一行添加return false;

    【讨论】:

      【解决方案3】:

      你可以简单地使用 jQuery post 函数。

      $.post('data.php',{param1:'your param 1', param2 : 'your param 2'}, function(response){
          //do your operation here. response is what you get from data.php. 'json' spicifies that the response is json type
          $("#data").html(response);
      },'json');
      

      【讨论】:

        【解决方案4】:

        首先,您拼错了函数名称 (getGata != getData)。

        其次:

        data: {url_param:url_param}
        

        您是否在任何地方设置了 javascript 变量 url_param? $.ajax data 参数格式如下:

        get/post variable name : get/post variable value
        

        正如您现在所拥有的,您似乎没有为 url_param 分配值。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2012-03-05
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多