无法通过JQuery调用.php文件

时间:2010-01-01 11:28:32

标签: jquery json

下面是我的JQuery代码。我刚刚添加了一个“警报”来测试是否正确检索数据。但是这段代码不起作用。我认为它根本无法进入文件“filldistricts.php”。

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.js" />

<script type="text/javascript">
$(document).ready(function(){
    $("#inDistrict").change(function(){
    $.getJSON("filldistricts.php",function(j){
        alert(j[0]);
    })
  })
})
</script>

下面我给出了“filldistricts.php”的代码:

<?php
    $query = "SELECT districtid FROM districtmaster";
    try
    {
        $result = mysql_query($query);
        $c = "";

        while($row = mysql_fetch_assoc($result))
        {
            $c = $c.$row['districtid'].",";
        }
        $c = $c."Select";
        echo json_encode(array($c));
    }
    catch(exception $ex)
    {
        echo "<script type='text/javascript'>alert('".$ex."');</script>";
    }
?>

问题出在哪里?

2 个答案:

答案 0 :(得分:2)

也许php正在返回异常?我认为不能使用getJSON,因为它不是JSON ..

答案 1 :(得分:0)

由于你在jQuery中使用getJSON,服务器返回类型应该是JSON字符串,因此当出现错误时你不能放置javascript和alert()。

因此而不是

echo "<script type='text/javascript'>alert('".$ex."');</script>";

使用

echo json_encode(array($ex)) ;

将允许您正确查看异常。