你这个html结构不规范,<div style="display: block; ">和<table>标签交叉了

解决方案 »

  1.   

    改成这样如何?请教一下如何取到
    <div class="a">
    <div style="display: block; ">
    <div class="title">
    <span class="num">2500</span>
    </div>
    </div></div>
    <div style="display: none; "><div class="title">
    <span class="num">2700</span>
    </div>
    </div></div>
    </div>
      

  2.   

    后面仍然多了两个</div>,不过就算了,整理一下格式:<div class="a">
    <div style="display: block; ">
    <div class="title">
    <span class="num">2500</span>
    </div>
    </div>
    </div><div style="display: none; ">
    <div class="title">
    <span class="num">2700</span>
    </div>
    </div>
    可以这样取:$('div.a>div:visible .num').text()
    //或者
    $('div.a>[style*="block"] .num').text()
      

  3.   

    换个角度去构造DOM,类似于这样加多个虚拟的class,是不是简单多了呢?<div class="a"> 
        <div style="display: block; "> 
            <div class="title"> 
                <span class="num show">2500</span> 
            </div> 
        </div> 
    </div> 
      
    <div style="display: none; "> 
        <div class="title"> 
            <span class="num hide">2700</span> 
        </div> 
    </div>