Servus,
ich würde das so regeln:
Dieser Code (hab ihn nicht getestet, muss also nicht frei von Fehlern sein) startet, sobald eine gewisse Länge des Eingabe-Strings erreicht ist, einen Timeout von einer halben Sekunde (500ms). Dieser wird gelöscht, sobald erneut eine Taste gedrückt wird.
Perfomancetechnisch ist das meiner Meinung nach so recht sinnvoll.
ich würde das so regeln:
HTML:
<input type="text" id="tbLiveSearch" onkeydown="clearSearchTimeout()" onkeyup="startSearchTimeout(this)">
<script type="text/javascript">
var searchTimeout;
var minSearchStringLength = 5;
function clearSearchTimeout() {
window.clearTimeout(searchTimeout);
}
function startSearchTimeout(ctrl) {
if (ctrl.value.length > minSearchStringLength = 0)
searchTimeout = window.setTimeout("AJAXSearch()", 500);
}
function AJAXSearch() {
...
}
</script>
Dieser Code (hab ihn nicht getestet, muss also nicht frei von Fehlern sein) startet, sobald eine gewisse Länge des Eingabe-Strings erreicht ist, einen Timeout von einer halben Sekunde (500ms). Dieser wird gelöscht, sobald erneut eine Taste gedrückt wird.
Perfomancetechnisch ist das meiner Meinung nach so recht sinnvoll.