Text auf Änderungen prüfen
Hugo
- javascript
Ich prüfe während ein Text in ein Textfeld geschrieben wird nach jedem Tastenanschlag, ob er mit einem Text aus der Datenbank übereinstimmt.
Frage: Würdet ihr mir davon abraten? Gerade bei größeren Texten?
Hallo,
Ich prüfe während ein Text in ein Textfeld geschrieben wird nach jedem Tastenanschlag, ob er mit einem Text aus der Datenbank übereinstimmt.
Frage: Würdet ihr mir davon abraten? Gerade bei größeren Texten?
Auf jeden Fall. Insbesondere bei größeren Texten würde es zu lange Dauern.
Eine Prüfung nachher reicht doch meistens vollkommen aus.
MfG. Christoph Ludwig
Alles klar. Danke!
Ich prüfe während ein Text in ein Textfeld geschrieben wird nach jedem Tastenanschlag, ob er mit einem Text aus der Datenbank übereinstimmt.
Warum?
Mathias
Weil nur dann der Submit-Button aktiv sein soll, wenn wirklich was geändert wurde.
Soll halt eine Internetanwendung an eine Software anpassen.
Weil nur dann der Submit-Button aktiv sein soll, wenn wirklich was geändert wurde.
Dann speichere den Originaltext in einem JavaScript-String und vergleiche mit dieser.
Warum musst du den Vergleich unbedingt serverseitig ausführen?
Mathias
Hab mich nicht eindeutig ausgedrückt. Der Text wird einmalig aus der Datenbank ausgelesen und wird in einem String gespeichert.
Wäre das dann weniger belastend?
Hi,
Hab mich nicht eindeutig ausgedrückt. Der Text wird einmalig aus der Datenbank ausgelesen und wird in einem String gespeichert.
Wäre das dann weniger belastend?
Natürlich, allein ständige HTTP-Requests (die im anderen Szenario erforderlich wären) stellen eine grosse "Belastung" dar; einerseits ans Netzwerk an sich, und auch an den Server, Datenbankabfragen kosten, selbst wenn sie gecached werden.
Aber wenn du allein auf dem Client prüfst, dann belastet das wenigstens schon mal "nur" den. Und wenn es nur darum geht, zwei Textstrings darauf zu vergleichen, ob sie nach wie vor identisch sind [1], ist das ganze auch nicht so "krass", sofern diese Texte nicht überlang sind.
Sollte sich das wegen zu grosser Textmengen oder zu schwachbrüstiger Clients doch als problematisch herausstellen, dann könnte man auch überlegen, nicht nach jedem Tastendruck zu prüfen, sondern vielleicht ein mal alle paar Sekunden (und auch das aussetzen, wenn gar kein Tastendruck zwischendurch stattfand); weitere Alternative wäre ggf. noch, erst bei dem Versuch, das ganze über einen aktiv belassenen Submitbutton abzusenden, zu prüfen - dann könnte man dem Nutzer ja immer noch mitteilen, dass das Absenden auf Grund nicht vorhandener Änderung verweigert wird.
[1] Wenn die bestehenden Texte aus der Datenbank als Vorgabewerte für Formularfelder mitgegeben werden, dann kannst du deren defaultValue-Eigenschaft mit dem aktuellen value abgleichen.
MfG ChrisB