Hallo zusammen,
ich bin weder JS-Profi noch Anfänger, also irgendwo dazwischen. Weiß aber nicht genau, wie ich mein Problem beschreiben soll. Daher habe ich auch über die Suche nichts Passendes gefunden.
Also, ich versuche es mal:
Mit dem Aufruf meiner Webseite rufe ich ein Start-Script auf, um ein DIV mit Inhalt zu füllen. Das geht auch. Jetzt kann ich ein Suchfeld ausfüllen und das Ergebnis wird in genau diesem DIV gezeigt. Das geht auch. Aber nur, so lange ich den Such-Button deaktiviere. Sobald ich ihn wieder aktiviere, füllt sich das DIV wieder mit dem Inhalt des Start-Scripts.
Im Code sieht das grob so aus:
Das Problem ist: Wenn ich beim Button #run-Suchen "disabled" auf "true" lasse, zeigt er mir das Suchergebnis richtig an. Sobald ich es am Ende wieder auf "false" setze, erscheint aber wieder der Inhalt aus der Funktion "InhaltAufuellen".
Diese Funktion wird aber doch eigentlich nur einmal zum Seitenstart aufgerufen. Oder habe ich da was übersehen?
ich bin weder JS-Profi noch Anfänger, also irgendwo dazwischen. Weiß aber nicht genau, wie ich mein Problem beschreiben soll. Daher habe ich auch über die Suche nichts Passendes gefunden.
Also, ich versuche es mal:
Mit dem Aufruf meiner Webseite rufe ich ein Start-Script auf, um ein DIV mit Inhalt zu füllen. Das geht auch. Jetzt kann ich ein Suchfeld ausfüllen und das Ergebnis wird in genau diesem DIV gezeigt. Das geht auch. Aber nur, so lange ich den Such-Button deaktiviere. Sobald ich ihn wieder aktiviere, füllt sich das DIV wieder mit dem Inhalt des Start-Scripts.
Im Code sieht das grob so aus:
Code:
<script>
$(function() { // beim Seitenstart
$('#run-Suchen').click(Suchen); // wenn jemand auf "Suchen" klickt, dann Funktion "Suchen" ausführen.
$(document).ready(Start); // zum Start direkt die Funktion "Start" ausführen.
});
function Start() {
InhaltAuffuellen(); // füllt das DIV mit einem Inhalt zum Start
$('#Suchbegriff').focus(); // den Fokus auf das Suchfeld setzen
}
function Suchen() {
this.disabled = true; // Such-Button deaktivieren
var Suchbegriff = $('#Suchbegriff').val(); // Suchbegriff auslesen
InhaltSuchen(Suchbegriff); // nach dem Suchbegriff suchen
$('#Suchbegriff').focus(); // den Fokus wieder auf das Suchfeld setzen
}
function InhaltAuffuellen() {
// hier wird ein Inhalt aus einer Datenbank gelesen und im DIV ausgegeben
}
function InhaltSuchen(Suchbegriff) {
// hier wird der Suchbegriff in einer Datenbank gesucht und im DIV ausgegeben
$('#run-Suchen').prop('disabled', false); // Such-Button wieder aktivieren, in dem Moment überschreibt sich das DIV allerdings wieder mit dem Inhalt aus der Funktion "InhaltAuffuellen"
}
</script>
Das Problem ist: Wenn ich beim Button #run-Suchen "disabled" auf "true" lasse, zeigt er mir das Suchergebnis richtig an. Sobald ich es am Ende wieder auf "false" setze, erscheint aber wieder der Inhalt aus der Funktion "InhaltAufuellen".
Diese Funktion wird aber doch eigentlich nur einmal zum Seitenstart aufgerufen. Oder habe ich da was übersehen?