下面是我的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>";
}
?>
问题出在哪里?
答案 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)) ;
将允许您正确查看异常。