我在php中实现了一个thumpsup函数。视图包含一个重击按钮,每次用户点击它时,数据库都会更新。我正在使用zend框架,所以我有一个 url mypage.de/articles/thumpsup/id/x 这个url指向我的文章控制器中的特定acion /函数,但是这个函数没有返回任何数据,它只是将重击添加到数据库。还有另一个功能列表将内容传递给视图。
所以我正在寻找一个jquery函数,在单击时执行查询 url mypage.de/articles/thumpsup/id/x ,然后执行list函数刷新视图。
$(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;
}
所以我通常用来执行url并更新视图的函数thumpsup在这里不起作用。任何想法如何解决?
答案 0 :(得分: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;
}
答案 1 :(得分:0)
如果我理解正确,“list”功能也是JavaScript。如果是这种情况,只需从AJAX请求的回调函数中调用它即可。
function(data) {
$.post(url, {
"format" : "json"
}, function(data) {
list();
}, 'html');
}