$(".button").click(function() {
$.post("commandrunner.php",
{
param1: 'value',
param2: 'value2',
param3: 'value3'
},
function(data, textStatus) {
$(this).parent().after('<p>button clicked</p>');
},
"json"
);
});
我运行了这段代码,但它没有起作用。在我提出回调函数没有在特定的“.button”上下文中被调用,所以$(this)无用之前,我尝试了几个方法。相反,以下代码可以解决问题:
$(".button").click(function() {
var thisButton = $(this);
$.post("commandrunner.php",
{
param1: 'value',
param2: 'value2',
param3: 'value3'
},
function(data, textStatus) {
thisButton.parent().after('<p>button clicked</p>')
},
"json"
);
});
这感觉有点像一个hack。获取点击按钮的引用的正确方法是什么?任何回调函数在什么上下文中被调用?谢谢!Ali