2010-09-16 112 views
0

我在php中實現了一個thumpsup函數。該視圖包含一個thumpsup按鈕,並且每次用戶單擊該按鈕時,db都會更新。我正在使用zend框架,所以我有一個網址mypage.de/articles/thumpsup/id/x此url指向我的文章conroller中的特定acion /函數,但此函數不返回任何數據,它只是增加了對數據庫的強大功能。還有另一個將內容傳遞給視圖的函數列表。jQuery,數據庫更新/顯示問題

所以我正在尋找一個jquery函數,執行查詢url mypage.de/articles/thumpsup/id/x點擊,然後執行列表函數刷新視圖。

$(document).ready(function() { 
    $("a.tp").click(thumpsUp); 
}); 

function thumpsUp() { 
var url = window.location.hostname + '/articles/thumpsup/id/' 
     + $(this).attr('id'); 
$.post(url, { 
    "format" : "json" 
}, function(data) { 
    .... 
}, 'html'); 
return false; 
} 

所以功能thumpsup,我會正常使用來執行一個網址和更新視圖在這裏不起作用。任何想法如何解決?

回答

1

如果你正在使用$(this)那麼你需要將它傳遞給函數,你不能只運行一個功能,你需要一個匿名函數...所以試試這個:

$(document).ready(function() { 
    $("a.tp").click(function(){ var myelement = $(this); thumpsUp(myelement); }); 
}); 

function thumpsUp(element) { 
var url = window.location.hostname + '/articles/thumpsup/id/' 
     + element.attr('id'); 
$.post(url, { 
    "format" : "json" 
}, function(data) { 
    .... 
}, 'html'); 
return false; 
} 
+0

以$(本).attr( '身份證')我剛開從文章鏈接文章ID。但那不是我的問題^^。我想知道如何實現一個函數,以asnyc的方式寫入數據庫中的thumpup而不返回任何內容 – 2010-09-16 12:00:06

+0

哦,我不知道我明白。如果你只是返回純文本「成功」或類似的將不起作用?你可以忽略'數據'。 – 2010-09-16 12:15:38

0

如果我沒有理解你正確的「列表」功能也是JavaScript。如果是這種情況,只需從AJAX請求的回調函數中調用它即可。

function(data) { $.post(url, { "format" : "json" }, function(data) { list(); }, 'html');

}