jquery检查哪个li是显示块并获取值

时间:2013-01-15 20:00:46

标签: jquery

我试图从显示的相同ul的列表中获取产品的价值:阻止(其他隐藏)。然而,当我点击选择不同的产品尺寸时,价格会发生变化,并且li显示:阻止更改为无,即li显示与cliked尺寸相关的价格:现在阻止。我想从li得到值:display:block但是它的说法未定义。任何人都可以帮我解决这个问题

 $(document).on("click", ".sizes li", function() {
 if ($('.sizes-list li').is(':visible'))
 {
 var price=$(this).find('dd').html();
 alert(price);
 }
 }); 

尺寸列表ul的标记

<ul class="sizes-list">
<li style="display:block"><dd>$7</dd></li>
<li><dd>$8</dd></li>
<li><dd>$9</dd></li>
</ul>

尺寸为ul的尺寸标记(尺寸按钮上)

<ul class="sizes">
<li><a href="#">Small</dd></a>
<li><a href="#">Medium</dd></a>
<li><a href="#">Large</dd></a>
</ul>

1 个答案:

答案 0 :(得分:0)

在jsfiddle上考虑这个:http://jsfiddle.net/bjryT/4/

这里有更新的脚本:

jQuery("ul.sizes-list li").each(function () {

  if (jQuery(this).css("display") == "block")
  {
    jQuery(this).on("click", function () 
    {
        var price = jQuery(this).find("dd:first").text();
      alert(price);
    });
  }
});