如何用jQuery从.qty-box-2获取关联的上层.discountData元素文本?
解决方案
先明确DOM层级关系:.discountData 和你的操作对象 .qty-box-2 共享同一个顶级父容器 .cart-item--content cl-plate-cart-item,你之前的方法无效的原因:
siblings()仅能查找同级元素,但两者不在同一层级parent()只针对直接父元素,显然.qty-box-2的父元素不是.discountDataclosest()是向上查找最近的祖先元素,而.discountData并非.qty-box-2的祖先节点
正确做法是先定位到共同父容器,再在容器内查找目标元素:
// 找到最近的顶级父容器,再获取.discountData的文本 $(this).closest('.cart-item--content').find('.discountData').text();
如果需要去除文本两端空白,可追加 .trim():
$(this).closest('.cart-item--content').find('.discountData').text().trim();
也可以用 parents() 替代 closest()(但 closest() 性能更优,找到第一个匹配项即停止遍历):
$(this).parents('.cart-item--content').find('.discountData').text();
内容的提问来源于stack exchange,提问作者FabricioG
相关产品推荐
相关产品推荐

