Javascript 搜索面板组标题
我试图创建一个搜索引擎来搜索我生成的面板组,但我没有找到正确的选择器 生成的标记如下所示:Javascript 搜索面板组标题,javascript,jquery,twitter-bootstrap,panel,Javascript,Jquery,Twitter Bootstrap,Panel,我试图创建一个搜索引擎来搜索我生成的面板组,但我没有找到正确的选择器 生成的标记如下所示: <div id="output"> <div class="panel-group"> <div class="panel panel-default"> <div class="panel-heading"> <div> <a data-toggle="collapse" href="#1"
<div id="output">
<div class="panel-group">
<div class="panel panel-default">
<div class="panel-heading">
<div>
<a data-toggle="collapse" href="#1">test<span class="status">Enabled</span></a>
</div>
</div>
</div>
</div>
<div class="panel-group">
<div class="panel panel-default">
<div class="panel-heading">
<div>
<a data-toggle="collapse" href="#2">Cookie<span class="status">Enabled</span></a>
</div>
</div>
</div>
</div>
我的问题是我不知道如何构建选择器。我试图访问输出div,然后在每个.panel标题处设置的起点,但出现以下错误:
Uncaught TypeError: Cannot use 'in' operator to search for 'length' in #output .panel-group
有人能帮我建立选择器吗?如何访问这么多子元素
为了澄清,我想输入t,然后只显示带有标题测试的面板。标题中也包含的“范围”不应包含在搜索结果中
这里有一把小提琴:
您的
$j.每个都以错误的方式使用$j。每个
对数组有效,但对选择器无效。$j(“”)。每个
对选择器有效。我为你做了一把小提琴
您可以使用$j('some_selector')。查找('child_selector')
来获取子元素正如您所提到的,它们在构建选择器和每个选择器中使用的方式是不正确的。将脚本部分修改为
var $j = jQuery.noConflict(true);
$j(document).ready(function () {
});
$j("#input_search").on('keyup', function(){
console.log("keyUp");
$j("#output .panel-group").each(function(i){
console.log($j(this).text().trim());
});
$j("#output .panel-group .panel .panel-heading").each(function (i){
});
});
我在您的JSFIDLE中尝试了它的工作原理。不客气@Dev0x。很高兴它对您有所帮助。但请确保您使用jquery文档中的选择器。
Uncaught TypeError: Cannot use 'in' operator to search for 'length' in #output .panel-group
var $j = jQuery.noConflict(true);
$j(document).ready(function () {
});
$j("#input_search").on('keyup', function(){
console.log("keyUp");
$j("#output .panel-group").each(function(i){
console.log($j(this).text().trim());
});
$j("#output .panel-group .panel .panel-heading").each(function (i){
});
});