我的html中有一堆嵌套在div标签中的按钮
<div class="button-wrapper"> <button class="button-class">Click here</button> </div> <div class="button-wrapper"> <button class="button-class">Click here</button> </div> ...
单击该按钮使用JQuery发布一些数据,并通过.ajax成功函数返回一些HTML.我正在尝试为每个单击的按钮替换div的内容,但由于某种原因,我的JQuery选择器似乎不起作用.
$(this).parent().html(data);
我知道数据已成功发布,并且成功功能正在运行.奇怪的是,以下工作:
$(".button-wrapper").html(data);
但显然这会将HTML添加到每个div中,而不仅仅是单击按钮的那个div.
有谁知道我在哪里可能会出错?
解决方法
在jQuery中,’this’通常在回调中被覆盖.解决方法是使用另一个变量引用它:
var _this = this; //or var $_this = this; $(_this).parent().html(data);