我在想什麼是用jQuery處理AJAX調用的最佳方法?現在我正在做類似如下:jQuery AJAX調用,如何處理
$("#test").live('click', function(){
// Process form
$.ajax({
type: "post",
url: "test.php",
success: function(html){
if(html.success == 0) {
alert('Error');
} else {
var obj = $.parseJSON(html.rows);
$("#success").html(obj[0].name);
}
},
dataType:'json'
});
return false;
});
在test.php文件中,我檢查請求是否是AJAX請求。如果它是一個AJAX請求我運行一個數據庫查詢得到一些數據(這部分是不是在這個問題很重要,我認爲):
// query goes here
if(mysql_num_rows($query) > 0) {
$result['success'] = 1;
$result['data'] = json_encode($data);
} else {
$result['success'] = 0;
}
現在我想知道如果我的方法可能是最好的?僅供參考我目前使用KohanaPHP框架,所以我不想打破MVC「規則」。如果我做錯了,你有任何提示和建議如何處理控制器中的AJAX調用?
問候, 湯姆
謝謝您的回答尼克。我很高興聽到我正確地做了這件事,花了幾個小時閱讀jQuery手冊。 BTW ...我想知道同樣的方式關於一個對象,但是當我嘗試'$(「#success」)。html(html.rows [0] .name);'在它不工作之前。想知道爲什麼? – Tom 2010-08-01 13:27:28
@Tom - 如果你的console.log(html.rows)'你在控制檯(Firebug/Chrome)中獲得了什麼?它仍然是一個字符串或對象? – 2010-08-01 13:30:07
@Nick - 由於未知原因,它是一個字符串。 – Tom 2010-08-01 13:35:30