为什么我的Ajax成功函数永远不会触发?

时间:2011-06-13 19:58:31

标签: javascript php jquery ajax

我的$.ajax成功函数永远不会触发。我只想执行PHP文件而不传递任何值。我正在使用另一种读取值的方法,但它无法运行,因为函数需要放在$.ajax成功函数中,这不起作用。

代码:

$(document).ready
(
    function()
    {
        var interval;

        function ajaxify()
        {
            $.ajax
            (
                {
                    url:"http://localhost/twitter/redirectFollow.php",
                    success:function()
                    {
                        $("#resultPara").prepend("test123"); // This does not trigger
                    }
                }
            );  //  End $.ajax
        }   //  End ajaxify

        $("#buttonClick").click
        (
            function()
            {
                ajaxify();
            }
        );  //  End buttonClick
    }
);

2 个答案:

答案 0 :(得分:2)

使用Firebug或同等工具确保请求成功并且您正在收到回复。

我的猜测是,因为您指定了绝对URL,所以该请求被视为跨域请求。如果您请求的脚本位于javascript所在的同一域中,请将URL缩短为/twitter/redirectFollow.php,否则您将必须使用JSONP的数据类型。 See docs

答案 1 :(得分:1)

这显然是你的ajax请求中的一个问题,你的请求没有成功,因此没有成功的号召。

您的代码在jsfiddle中工作得很好:http://jsfiddle.net/Sgbup/(使用ajax echo服务)

使用firebug或chrome的javascript控制台检查调用。