这可能比我尝试过的更容易。我有一组<div>
,例如<div id="site-abc" .. "site-def">
,每个都有类似的HTML内容。 DIV有多个类,如"ui-tabs-panel class2 ui-tabs-hide"
。一个没有ui-tabs-hide。这就是我需要一个选择器,然后从那里我需要在宾果游戏内找到该DIV中的独特文本!
以下步骤的正确jQuery选择器代码是什么:A)使用<div>
但不包含class="ui-tabs-panel"
找到正确的"ui-tabs-hide"
; B)获取该选择器结果并找到('th.target2')
并获取.text()
?
var tabs = $('#editors.not(.ui-tabs-hide');
var my_text = tabs.find('th.target2').text();
<div class="grid-editor">
<div id="editors" class="ui-tabs">
<div id="site-abc" class="ui-tabs-panel class2 ui-tabs-hide">
//duplicates HTML like "site-ghi" including <th>bingo!</th>
</div>
<div id="site-def" class="ui-tabs-panel class2 ui-tabs-hide">
//duplicates HTML like "site-ghi" including <th>bingo!</th>
</div>
<div id="site-ghi" class="ui-tabs-panel class2”>
<table class=”my-table”>
<thead>
<tr>
<th class="target1">abc1</th>
<th class="target2">bingo</th>
</tr>
</thead>
</div>
</div>
</div>
答案 0 :(得分:1)
你几乎得到了它。使用:not
选择器省略您不需要的选项。
var divs = $('.ui-tabs-panel:not(.ui-tabs-hide)');
我不确定这是否与问题有关,但你的选择语句中也有错误。
var tabs = $('#editors.not(.ui-tabs-hide');
//^ No Closing bracket
答案 1 :(得分:1)
试试这个:
var val = $('div.ui-tabs-panel:not(.ui-tabs-hide)').find('th').filter(".target2").text();
alert(val);
答案 2 :(得分:0)
var my_text = $('#target2', '.ui-tabs-panel:not(.ui-tabs-hide)').text();
答案 3 :(得分:0)
var divs = $('.ui-tabs-panel:not(.ui-tabs-hide)');
或
var divs = $('.ui-tabs-panel').not('.ui-tabs-hide');
然后找到target2
你可以试试这个:
$('th#target2', divs).text();
根据你的标记&#39; target2&#39;是id
而不是class
。因此th#target2
正确,而不是th.target2
答案 4 :(得分:0)
我认为最酷的方法是:
var text = $(".ui-tabs-panel:not(.ui-tabs-hide) th.target2").text();
希望有所帮助