Javascript 搜索表单只工作一次
我有一个显示框列表的页面,当我搜索时它会给出完美的结果,当我再次搜索时,什么都不会显示 搜索框:Javascript 搜索表单只工作一次,javascript,jquery,html,search-box,Javascript,Jquery,Html,Search Box,我有一个显示框列表的页面,当我搜索时它会给出完美的结果,当我再次搜索时,什么都不会显示 搜索框: <form class="search-form"> <input type="text" id="searchfield" class="input-medium search-query" placeholder="Search"> <button type="submit" class="btn">Search</button> <
<form class="search-form">
<input type="text" id="searchfield" class="input-medium search-query" placeholder="Search">
<button type="submit" class="btn">Search</button>
</form>
我刚刚将您的代码复制粘贴到一个代码段中,它似乎工作正常 尝试键入“Title”,然后键入“Foo”,然后再次键入“Title”,例如:
$('.search form')。在('submit',function()上{
返回false;
});
$('.search form.btn')。在('click',函数(e)上{
var query=$.trim($(this).prevAll('.search query').val()).toLowerCase();
$('div.mybox.mytitle')。每个(函数(){
var$this=$(this);
if($this.text().toLowerCase().indexOf(查询)=-1)
$this.closest('div.mybox').fadeOut();
else$this.closest('div.mybox').fadeIn();
});
});代码>
搜寻
标题在这里
#标签
事件标题为类的元素在哪里?@Jeto my bad,请再次检查,将其更改为$this.closest('div.col-md-4.col-sm-6')。fadeOut();这样div就不会占用空间。它不起作用,但您的运行确实起作用:(@YaraBinSaif是的,更改也起作用(没有理由不起作用)。您是否尝试添加一些console.log
,以尝试了解发生了什么?我应该确切地添加到哪里?我添加了console.log(查询);检查查询的值是否正确并显示fine@YaraBinSaif首先,在你的事件处理程序上。它们会触发吗?在任何情况下,你都必须找到你在这里发布的内容和你的实际代码之间的差异。
<div class="col-md-4 col-sm-6">
<div class="mybox">
<div data-title="Titleshoudbehere" class="myitem">
<a target="_blank">
<div class="mytitle">
<p>Title is here</p>
</div>
<div class="footer">
<p>#hashtag </p>
</div>
</a>
</div>
</div>
</div>
$('.search-form').on('submit', function() {
return false;
});
$('.search-form .btn').on('click', function(e) {
var query = $.trim($(this).prevAll('.search-query').val()).toLowerCase();
$('div.mybox .mytitle').each(function() {
var $this = $(this);
if ($this.text().toLowerCase().indexOf(query) === -1)
$this.closest('div.col-md-4.col-sm-6').fadeOut();
else $this.closest('div.col-md-4.col-sm-6').fadeIn();
});
});