[英]JQUERY: Accessing element cousin by class
嗨,我有以下html代码:
<li class="grey">
<div class="row">
<button id="test" style="width:50%;" class="btn btn-blue-white cartBtn">Add to Cart</button>
</div>
<div class="row">
<a href="#" class="checkoutLink" style="margin-top:-10px;font-size:small">Go To Checkout</a>
</div>
</li>
加载页面时,我会隐藏结帐链接按钮,直到用户单击“添加到购物车”为止。 在他们单击添加到购物车后,我的JavaScript如下所示:
$('.cartBtn').click(function () {
//do stuff for preprocessing
var url = "../Store/AddToCart";
$.ajax({
type: "GET",
url: url,
data: {
//add data
},
dataType: "json",
success: function (data) {
if (data.success == true) {
$(this).closest('li').find('.checkoutLink').show();
}
}
});
});
链接永远不会显示备份。 我也尝试使用
$(this).parent().parent().find('.checkoutLink').show()
也没有运气。 我如何使用jquery来获取此锚标记并使其可见。
问题是this
,从成功函数中调用的时候它不再是指外this
。 在Ajax之外创建一个引用原始this
的变量。
$('.cartBtn').click(function () {
var $this = $(this);
//do stuff for preprocessing
var url = "../Store/AddToCart";
$.ajax({
type: "GET",
url: url,
data: {
//add data
},
dataType: "json",
success: function (data) {
if (data.success == true) {
$this.closest('li').find('.checkoutLink').show();
}
}
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.