Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 搜索表单只工作一次_Javascript_Jquery_Html_Search Box - Fatal编程技术网

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();
  });
});