【发布时间】:2009-09-08 08:49:50
【问题描述】:
我想知道为什么在 jQuery ajax 调用之后 $(this) 不起作用。
我的代码是这样的。
$('.agree').live("click", function(){ // use live for binding of ajax results
var id=($(this).attr('comment_id'));
$.ajax({
type: "POST",
url: "includes/ajax.php?request=agree&id="+id,
success: function(response) {
$(this).append('hihi');
}
});
return false;
});
为什么在 ajax 调用后 $(this) 在这种情况下不起作用?如果我在ajax之前使用它会起作用但之后没有效果。
【问题讨论】:
-
我建议阅读 JavaScript 函数范围 - developer.mozilla.org/En/Core_JavaScript_1.5_Reference/… 以及 Doug Crockford 的语言调查 - javascript.crockford.com/survey.html