Ajax jQuery调用未完成并返回字符串

时间:2014-03-26 01:18:09

标签: jquery ajax

我无法运行ajax,因为测试字符串没有在html中显示。 服务器工作正常,jQuery是最新的。 代码似乎能够注册点击并阻止默认行为,但它没有完成ajax调用。

//// index.php ////

<a id='id' href=''>Test</a>

<script>
$(document).ready(function()
{
    $('#id').click(function(event)
    {
        event.preventDefault();
        $.ajax(
        {                                      
            type:'POST',
            url:'ajax.php',
            data:'test',
            dataType:'json',
            success:function(d)
            {
                $('#id').html(d.msg);
            }
        });
    });
});
</script>

//// ajax.php ////

<?php

class ajax
{
    function test()
    {

        $t = array();
        $t['msg'] = 'Test';
        return  json_encode($t);
    }
}

$ajax = new ajax;
echo $ajax->test();

?>

2 个答案:

答案 0 :(得分:0)

<?php

class ajax
{
    function test()
    {

        $t = array();
        $t['msg'] = 'Test';
        return  json_encode($t);
    }
}

$ajax = new ajax;
echo $ajax->test();

?>

您将返回一个空数组,因为您没有使用任何值填充$ t数组。改变这一点,它应该工作正常。否则尝试在浏览器中调用你的php,看看它返回的内容。

答案 1 :(得分:0)

问题出在url:'ajax.php',。我进入了错误的文件路径,尽管多次检查...