Ich habe eine Suchfunktion, die die Divs verstecken muss, die nicht mit den Suchkriterien übereinstimmen.fadeOut() übergeordnetes Element kommt zurück
HTML aus Elementen
<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>
Es gibt mehrere dieser divs, die in die Seite geladen werden. Alle diese divs haben die Klasse .tfInput
und werden an das Formular mit der ID "list"
angefügt.
HTML, wo die divs in
<form class="form-inline">
<div class="form-group">
<input class="form-control" type="text" id="searchElement" style="width: 200px" />
<button type="button" class="btn btn-default" onclick="search()">search</button>
</div>
</form>
<div class="container">
<form class="form-inline" id="list"></form>
</div>
geladen werden Es ist ein Suchfeld mit der ID "searchElement"
und die Suchfunktion aufgerufen wird, wenn eine Schaltfläche geklickt wird oder mit einem keyup()
Ereignis in das Suchfeld ein.
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();
}
})
};
Problem
Die divs Fadeout aber sie wieder innerhalb der gleichen Sekunde.
Sie bleiben nie versteckt.
Wer ist eine Lösung?
Thx
Wann rufen Sie 'search()' auf? – Rayon
Verwenden Sie während der Formatierung ein Codebeispiel und kein Codefragment, wenn Sie nur ein Codefragment anzeigen möchten, das nicht funktioniert. –
Bitte geben Sie den vollständigen HTML-Code mit Suchfeld ein. –