【发布时间】:2014-11-27 00:00:37
【问题描述】:
我需要有关如何从 2 个 jquery:contains() 选择器实例中获取总实例的帮助。对于某些多重需求,我需要获取变量的两个实例并显示总结果而不重复。
为了进一步解释,这里是详细信息-
html div 块 -
<div id="results"></div>
<div class="container">
<div class="keywords" style="display:none">Global, City1</div>
<div class="display" style="display:none">Results one for Global City1</div>
</div>
<div class="container">
<div class="keywords" style="display:none">Global, City2</div>
<div class="display" style="display:none">Results one for Global City2</div>
</div>
<div class="container">
<div class="keywords" style="display:none">Global, City3</div>
<div class="display" style="display:none">Results one for Global City3</div>
</div>
<div class="container">
<div class="keywords" style="display:none">Global, City4</div>
<div class="display" style="display:none">Results one for Global City4</div>
</div>
<div class="container">
<div class="keywords" style="display:none">Main1, City1</div>
<div class="display" style="display:none">Results one for Main1 City1</div>
</div>
<div class="container">
<div class="keywords" style="display:none">Main2, City2</div>
<div class="display" style="display:none">Results one for Main2 City2</div>
</div>
我的 javascript -
var keyword= "Global";
var keyword2= "Main";
$('.container').has('.keywords:contains('+keyword+')').children(".display").show();
var text = "";
var i = 0;
while (i < keyword.length) {
text += ":contains('"+keyword[i]+"')";
i++;
}
// keyword 2
$('.container').has('.keywords:contains('+keyword2+')').children(".display").show();
var text2 = "";
var x = 0;
while (x < keyword2.length) {
text2 += ":contains('"+keyword2[i]+"')";
x++;
}
var results1 = $("div[class^=keywords]"+text+"").length;
var results2 = $("div[class^=keywords2]"+text2+"").length;
var results = results1 + results2;
$("#results").append(results);
我的测试用例 -
- 如果 var keyword = = "Global" 并且 var keyword2= "Global";然后是 4 个结果,因为 Global 和 Global 有 4 个匹配的实例。 - 好的
- 如果 var keyword = = "Global" 并且 var keyword2= "Main";那么它仍然显示 4 个结果,但它应该是 6 个结果,因为有 6 个匹配的实例。 - 不正确
这是我的小提琴供参考 - http://jsfiddle.net/358bx237/
如何更正我的代码以显示测试用例 #2 的 6 个结果?
提前谢谢你。
【问题讨论】:
-
好的。由于答案不起作用。我会删除代码。谢谢
标签: javascript jquery jquery-selectors contains