Ich möchte TAB-Zeichen in einem TEXTAREA einfügen, wie folgt:
%Vor%Ich kann vor / nach den vorhandenen TEXTAREA-Text einfügen - und ich kann / den gesamten Text im TEXTAREA ersetzen - aber noch nicht innerhalb den vorhandenen TEXTAREA-Text (durch den Cursor) auf einfache Weise.
%Vor%Es gibt ein "tabs in textarea" -Plug-in für jQuery ( "Tabby" ) - aber es ist 254-Code Zeilen - Ich habe auf ein paar Zeilen Code gehofft.
Ein paar Links, die ich studiert habe: (wiederum würde ich weniger Codezeilen bevorzugen).
Bitte beraten. Danke.
Ich habe eine einfache AJAX-IDE für mich selbst entwickelt, damit ich PHP-Schnipsel schnell testen kann.
Ich erinnere mich, dass ich über das gleiche Problem gestolpert bin, hier habe ich es gelöst:
%Vor% #input
ist die ID des Textfelds.
Der Code gehört nicht ganz mir, ich habe ihn irgendwo auf Google gefunden.
Ich habe es nur auf FF 3.5 und IE7 getestet. Es funktioniert leider nicht auf IE7.
Leider ist es nicht so einfach, den Text in textarea-Elementen zu manipulieren. Der Grund, dass Tabby größer ist als diese einfachen Snippets ist, dass es besser funktioniert. Es hat bessere Cross-Browser-Kompatibilität und behandelt Dinge wie Tab-Selektionen.
Wenn es verkleinert wird, sind es nur etwa 5k. Ich würde vorschlagen, es zu benutzen. Sie müssen diese Kantenfälle entweder selbst entdecken oder beheben oder wissen vielleicht nichts davon, wenn Benutzer sie nicht melden.
Ja, der Umgang mit Eingabefeld-Auswahlmöglichkeiten in den verschiedenen Browsern ist ein Ärgernis, besonders da es im IE einige Methoden gibt, die aussehen wie sie funktionieren sollten, aber eigentlich nicht. (Insbesondere kombiniere ich mit setEndPoint
und dann mit length
, was OK ist, bis die Auswahl in Newlines beginnt oder endet.)
Hier sind ein paar Utility-Funktionen, die ich benutze, um mit Eingabe-Auswahlen umzugehen. Sie gibt den Wert der Eingangsaufteilung in Bits vor, innerhalb und nach der Auswahl zurück (wobei die Auswahl als leere Zeichenfolge an der Eingabefokusposition zählt, wenn es sich nicht um eine Auswahl handelt). Dies macht es ziemlich einfach, Inhalt an der Stelle zu ersetzen und einzufügen, die Sie wollen, während Sie sich um das IE CRLF-Problem kümmern.
(Es kann eine jQuery geben, die so etwas tut, aber ich muss noch eins finden.)
%Vor%Tags und Links javascript jquery keypress