Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
onkeypress is klar - aba wie !?! [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
ebiz-webhosting
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
onkeypress is klar - aba wie !?!


 
dani_o
31-08-2006, 09:41 
 
Ich möchte das so machen, dass man ein Text in ein textarea-feld eingibt und somit im div.layer "vorschau" SOFORT der neue Text angezeigt wird. Mein Prob iss, dass nachdem ich eine taste gedrückt habe kommt nix - erst wenn ich die nächste taste drücke und in der vorschau fehlt mir dann immer ein zeichen (klar?)!

Mein bisheriger code:


<head>
<script>
function ChangeVorschau(vorschau){
document.all.vorschau.innerHTML = vorschau;
}
</script>
</head>
<body>
<textarea onkeypress="ChangeVorschau(this.value)">

</textarea>

<div id="vorschau"></div>
</body>


wie bekomme ich ALLE zeichen in den layer, da ja immer das letzte nicht sofort übernommen wird?

Thx 4 help

 
TobiaZ
31-08-2006, 09:49 
 
versuch mal den wert nicht zu übergeben, sondern erst IN der Funktion aus der Textarea auszulesen.

 
dani_o
31-08-2006, 09:53 
 
selbes ergebnis! :(

 
TobiaZ
31-08-2006, 09:55 
 
in nem alert() ist das letzte zeichen auch nicht drin?

Ach, ist doch logisch. Wenn du die Taste drückst, ist das Zeichen noch gar nicht eingegeben. Versuchs mal mit onkeyup Java-Funktion mit JS verwechselt. ;)

 
dani_o
31-08-2006, 09:58 
 
LOL - da kommt garnix mehr

 
TobiaZ
31-08-2006, 10:02 
 
Siehe mein Edit. onkeyrelease kommt aus JAVA (schon schei* wenn man die Sprachen nicht auseinander halten kann. :D)

 
dani_o
31-08-2006, 10:03 
 
thx - mit onkeyup gehts - noch ne frage:

var jetzt = vormals.replace(/Hinz/, "Kunz, geb. Hinz");

ersetzt den Ausdruck Hinz
Wie kann ich nun abfragen bsp:

::Laber::

also das ::Laber:: mit <b>Laber</b> ersetzt wird?

 
wahsaga
31-08-2006, 10:04 
 
Klar machen, wie sich das Reagieren auf Events in Javascript auswirkt:

Es werden Javascript-Funktionen aufgerufen/ausgeführt, bevor die eigentliche Aktion, die zum Event gehört, stattfindet - kennt jeder vermutlich von einem Link, der ein Popup öffnen soll o.ä., und wo dann mit "return false" aus dem Eventhandler onclick heraus die eigentliche Aktion des Links, nämlich Aufrufen der als href angegebenen Ressource, unterbunden wird.

Übertragen wir das auf die Textarea:
Anwender drückt Taste, eigentliche Aktion wäre, dass das zugehörige Zeichen jetzt dem Textarea-Inhalt hinzugefügt wird.
Aber, unsere Eventbehandlung über onkeypress kommt ja vorher!
Also liest du in deiner Funktion jetzt den Inhalt der Textarea aus, noch bevor das neue Zeichen hinzugefügt wurde - das passiert erst dann, wenn du mit deiner Behandlung des Events onkeypress fertig bist!

Suche dir also einen passenderen Event - beispielsweise onkeyup, "wenn der Nutzer die Taste wieder losgelassen hat". Wenn dieser Event eintritt, ist das Zeichen schon in der Textarea drin - wenn du jetzt deren aktuellen Inhalt ausliest, hast du was du willst.

 
dani_o
31-08-2006, 10:06 
 
boah bissu langsam *Sfg*
dieses Prob hab ich schon gelöst ... XD

Thx Tobiaz

 
wahsaga
31-08-2006, 10:10 
 
Original geschrieben von dani_o
boah bissu langsam *Sfg*

Ja, weil ich auch versucht habe, dir die Ursache zu erklären ...

Aber, ganz ehrlich, ich hab mir schon beim Schreiben gedacht, ob das nicht wieder so eine "Perlen vor die ..."-Sache wird.

dieses Prob hab ich schon gelöst ... XD
Ja, vor allem hast du es gelöst ...
Das wäre dann aber das erste, wenn ich mich nicht verzählt habe.

 
dani_o
31-08-2006, 10:13 
 
sry so wars nich gemeint - du verstehst aba och keen spaß *grübel* werd ich demnächst anders mit dir reden - tut mir leid ...

hab die ursache verstanden, dass ich ja prüfen muss, wann die funtkion aufgerufen wird. in meinem fall hab ich se halt zu früh aufgerufen *g* aba nu hab ichs verstanden!

trotzdem danke wahsaga

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 18:19 Uhr.