【发布时间】:2019-10-01 04:55:27
【问题描述】:
我在做作业时遇到了一些问题。我想用 JavaScript 实现对特定类别或所有类别的搜索。我搜索了网络,但发现了关于这个主题的大量代码。
我想要的是tr 搜索,而不是th 或td 搜索。
如果您查看此 W3schools 链接 https://www.w3schools.com/howto/howto_js_filter_table.asp,它是“td”搜索。
我的代码是
- 类别 => 点击菜单
$('.category_item').click(function() {
$(this).addClass('on').siblings().removeClass('on');
var category = $(this).attr('id');
if(category == 'all') {
$('tr').hide().show();
} else {
$('tr').hide();
$('.' + category).show();
}
}); // click
- 搜索 => 我试过了。此代码在“所有数据”中实现,而不是在“可见数据”中实现,并且在实现类别被取消后
$('.inputSearch').keydown(function(key) {
var value = $(this).val().toLowerCase();
if(key.keyCode == 13) {
$("tbody tr").filter(function() {
$(this).toggle($(this).text().toLowerCase().indexOf(value) > -1)
});
} // if
}); // search
<main class="listWrap">
<div class="listTitle">
<h3>Category</h3>
<div class="category">
<button class="category_item on" id="all">전체</button>
<button class="category_item" id="a">a</button>
<button class="category_item" id="b">b</button>
<button class="category_item" id="c">c</button>
<button class="category_item" id="d">d</button>
</div>
<div class="searchArea">
<input class="inputSearch" type="text" id="myInput" onkeyup="search()" placeholder="제목, 작성자이름으로 검색">
</div>
</div>
<div class="listTableWrap">
<table class="listTable" id="myTable">
<tbody>
<tr class="a recomm">
<td class="num"><span class="rec">추천</span></td>
<td></td>
<td class="project"><a href="/step1/content.jsp"></a></td>
<td class=""></td>
<td class="name"></td>
</tr>
<tr class="b recomm">
<td class="num"><span class="rec">추천</span></td>
<td></td>
<td class="project"><a href="/step1/content.jsp"></a></td>
<td class=""></td>
<td class="name"></td>
</tr>
<tr class="recomm c">
<td class="num"><span class="rec">추천</span></td>
<td></td>
<td class="project"><a href="/step1/content.jsp"></a></td>
<td class=""></td>
<td class="name"></td>
</tr>
<tr class="b">
<td class="num">13</td>
<td></td>
<td class="project"><a href="/step1/content.jsp"></a></td>
<td class=""></td>
<td class="name"></td>
</tr>
<tr class="d">
<td class="num">3</td>
<td></td>
<td class="project"><a href="/step1/content.jsp"></a></td>
<td class=""></td>
<td class="name"></td>
</tr>
<tr class="c">
<td class="num">2</td>
<td></td>
<td class="project"><a href="/step1/content.jsp"></a></td>
<td class=""></td>
<td class="name"></td>
</tr>
</tbody>
</table>
</div>
</main>
【问题讨论】:
-
你能澄清一下 td 搜索是什么意思吗?
-
嗯..我不使用'td',但链接代码使用'td'。
-
对不起,我问的是 tr 搜索。你想完成什么?
-
如果你先看代码,我使用代码'$('tr').hide().show();'我认为表格搜索与此方法相同。
-
所以我在表格搜索中使用了这种方法。如果我使用'td',什么都不会出现。
标签: javascript jquery html search