Javascript fadeOut()父元素返回

Javascript fadeOut()父元素返回,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有一个搜索函数,它必须隐藏与搜索条件不匹配的div 来自元素的HTML <div class="form-group" id="number"> <input class="form-control tfInput" id="tfInput1" type="text" value="test"> <button type="button" class="btn btn-success" id="update1"> Save </button

我有一个搜索函数,它必须隐藏与搜索条件不匹配的div

来自元素的HTML

<div class="form-group" id="number">
  <input class="form-control tfInput" id="tfInput1" type="text" value="test">
  <button type="button" class="btn btn-success" id="update1"> Save
  </button>
  <button type="button" class="btn btn-default" aria-label="Delete" id="delete1">Delete
  </button>
</div>
有一个id为“searchElement”的搜索框,单击按钮或搜索框中的
keyup()
事件时会调用搜索函数

Javascript

function search() {
  $.each($('#list .tfInput'), function(index, input) {
    if (new RegExp($('#searchElement').val().toUpperCase()).test(input.value.toUpperCase())) {
      $(input).parent().show();
    } else {
      $(input).parent().fadeOut();
    }
  })
};
问题

div消失,但在同一秒内重新出现。
他们从不躲起来。
有人提出解决方案吗

Thx

我有类似的问题:)尝试阻止你的按钮,如:

 $("#Button").click(
             function(event) {
                  $(this).attr("disabled", true);
                  event.preventDefault();
                  //your code
                  $(this).attr("disabled", false);
            };
);
不知什么原因,javascript喜欢将单击解释为双击。

如果元素具有默认的“模式”,它也可以返回到该模式。为了防止它,我们只使用event.preventDefault()

第三种选择是将其隐藏在其他地方。

第四个选项:使用每个tfInput元素。所以它会找到第一个隐藏输入的父项。查找第二个-显示父输入。再次查找第三个-隐藏输入父对象。它切换相同的元素。

试试这个

$( input ).fadeOut( "slow" );
现在修好了

我更改了一些css属性,因为bootstrap没有达到我预期的效果

那就是把一切都搞砸的错误

我的错误?我将所有div的
display
属性更改为
block!重要信息
,因此它们不断出现


感谢所有的投入

何时调用
search()
?格式化时,如果您只想显示代码片段,而不是工作示例,请使用代码示例,而不是代码段。请使用搜索框提供完整的htmlalso@Rayon单击搜索按钮或在输入字段中发生keyup事件时调用该函数。是否尝试使用hide()?在IF语句的每个分支中插入console.log,并查看它们是否以及何时被触发。没有看到提交:)使用的原因有几个!重要信息不建议:)将避免使用!未来重要:)
$( input ).fadeOut( "slow" );