当关联元素包含字符串时,jQuery 仅隐藏下一个元素的最佳方法



我有一个情况,我想根据另一个元素("测试"(的文本值隐藏一个元素("目标"(。 当我找到元素("测试"(时,我有代码隐藏元素("目标"(的所有情况,但我只想隐藏下一个元素("目标"(继续对其他"测试"元素进行操作。

示例 HTML:

<div class="cart-item-block cart-item-option-list">
<div class="cart-item-option">
<span class="cart-item-option-name">
Select card type:
</span>
<span class="cart-item-option-value">
Standard Card
</span>
</div>
<div class="cart-item-option">
<span class="cart-item-option-name">
Add a personal message ($2 extra for Standard cards):
</span>
<span class="cart-item-option-value">
No
</span>
</div>
</div>
<div class="cart-item-block cart-item-giftwrap">
<div class="giftwrap-item">
<a class="giftwrap-item-add" href="#" data-item-giftwrap="d55d1fd6-1ad6-4766-a769-0843e950008e" data-text-short="Add" data-text-long="Add Personal Message">
<svg role="presentation"><use xlink:href="#icon-increment-regular"></use></svg>
</a>
</div>
</div>
<div class="cart-item-block cart-item-option-list">
<div class="cart-item-option">
<span class="cart-item-option-name">
Select card type:
</span>
<span class="cart-item-option-value">
Standard Card
</span>
</div>
<div class="cart-item-option">
<span class="cart-item-option-name">
Add a personal message ($2 extra for Standard cards):
</span>
<span class="cart-item-option-value">
Yes
</span>
</div>
</div>
<div class="cart-item-block cart-item-giftwrap">
<div class="giftwrap-item">
<a class="giftwrap-item-add" href="#" data-item-giftwrap="d55d1fd6-1ad6-4766-a769-0843e950008e" data-text-short="Add" data-text-long="Add Personal Message">
<svg role="presentation"><use xlink:href="#icon-increment-regular"></use></svg>
</a>
</div>
</div>
类=">

购物车项目选项值"是的情况也是如此,我们显示类="礼品包装项目" 并在类="购物车项目选项值"为否时隐藏。

这是我当前的jQuery - 它设法隐藏所有class="giftwrap-item" ..调频

//jquery to hide giftwrap option in the cart when The value of Add a personal message is No
$(location).attr('href');
if(window.location.href.indexOf("cart") > -1) {
var x = $('.cart-item-option-value').text();
var theTest = 'No';
if(x.indexOf(theTest) != -1){
$('.giftwrap-item-add').hide();
alert( x );
}
}

我采用的解决方案如下..

$(location).attr('href');
if(window.location.href.indexOf("cart") > -1) {
$(".cart-item-option-value:contains('No')").parent().parent().next().hide();
}
//jquery to hide giftwrap option in the cart when The value of Add a personal message is No
$(location).attr('href');
if(window.location.href.indexOf("cart") > -1) {
$(".cart-item-option-value:contains('No')").parent().parent().next().hide();
}

希望能解决它!

相关内容

最新更新