如何获取不同级的元素

代码:

<li class="title_width2" id="price1">¥28</li>
<li class="title_width3">
    <div class="Numbers">
        <a href="javascript:void(0);" id="del1" onclick="updatenum('del');" class="jian">-        </a>
    <input id="number1" name="number" type="text" value="2" class="number_text">
    <a href="javascript:void(0);" id="add1" onclick="updatenum('add');" class="jia">+</a>
        </div>        
</li>
<li class="title_width4" id="total1">¥545</li>
<li class="title_width5"><a href="#">删除</a></li>

如何获取¥28和¥545,分别以class="jian和class="jia"定位开始找。
也就是

$(".jia").on("click",function(){
      //获取¥28
      //获取¥545
})
$(".jian").on("click",function(){
      //获取¥28
      //获取¥545
})

因为是有多个商品的,所以不能用$(".title_width4").text();获取,这样比较麻烦,如果有多个的话就获取重复了。我想得到的效果是用寻找级别的选择器

阅读 2.5k
4 个回答

获取¥28:$('.jian').closest('li').pre().text();
获取¥545:$('.jian').closest('li').next().text();

我见你写的有id了,可以用id

$(".jia").on("click",function(){
  $(this).find(".title_width4")
})
$('#del1').click(function(){
        console.log($(this).parent().parent().parent().find($('#price1')).html())
})
$('#add1').click(function(){
        console.log($(this).parent().parent().parent().find($('#total1')).html())
})

find是返回当前元素的后代元素选择的结果。里面填选择器。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进