Ajax übergibt varable nicht wenn sie geändert wird
THomas
- javascript
Hiho ich hab folgendes Script geschrieben:
function senden()
{
var tex = window.document.karl.nachricht.value;
var myAjax = new Ajax.Request(
"poread.php",
{ method: 'get', parameters: 'u='+tex+'',onComplete: posten }
);
}
function posten(originalRequest)
{
sep = originalRequest.responseText;
document.getElementById("2").innerHTML=sep;
}
alles funktioniert Perfekt wenn ich es einmal ausführe bzw die Variable nicht ändere. Ändere ich die variable (also den Inhalt des Textfelds) wird die Variable per get nicht mehr richtig übergeben.
Hätte jemand eine Idee warum das so ist?
mfg
Thomas
Ps: Gibt es eine Eigenschaft mit der eine textarea immer mit dem Scrollbalken ganz unten aufruft?
Hi,
function senden()
{
var tex = window.document.karl.nachricht.value;
hier wird eine Variable im Kontext der Funktion "senden" deklariert und mit einem Wert gefüllt.
> ` { method: 'get', parameters: 'u='+tex+'',onComplete: posten }`{:.language-javascript}
Hier wird ein Objekt zusammengebaut, dessen Inhalt diesen soeben befüllten Wert verwendet.
> alles funktioniert Perfekt wenn ich es einmal ausführe bzw die Variable nicht ändere. Ändere ich die variable (also den Inhalt des Textfelds) wird die Variable per get nicht mehr richtig übergeben.
Ich sehe nirgendwo, dass Du eine Änderung des Wertes im Eingabefeld auch nur in eine Variable übertragen, geschweige denn diese ins o.g. Objekt bringen würdest.
> Hätte jemand eine Idee warum das so ist?
Ganz einfach: Es gibt keinen Grund, etwas Gegenteiliges anzunehmen. Dein Code ist starr, er hat nichts implementiert, das eine Veränderung einbeziehen würde.
Cheatah
--
X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
X-Will-Answer-Email: No
X-Please-Search-Archive-First: Absolutely Yes
Hi und danke für die schnelle Antwort.
Wenn man den Text im Textfeld ändert muss man die Punktion in der das value-Argument ausgelesen wird nochmal aufrufen. Also wird jedes mal die Variable neu definiert.
Das wird mir auch von Firebug bestätigt.
btw.: gibt es eine Eigenschaft mit der ich eine Textarea immer ganz "runtergescrollt" generiert wird?
mfg
So ich denke ich habe das Problem gefunden. Und zwar das mein php-script keine Sonderzeichen verarbeiten kann.
Ich würde das ja mit backslashes lösen nur leider weiß ich nicht wo ich die jetzt adden sollte bzw. ob das Problem auf diesem Weg überhaupt lösbar ist.
Hier das Script:
<?php
$daten=$_GET['u']."\n";
$datenbank = "daten.dat";
$datei = fopen($datenbank,"a");
fwrite($datei, $daten);
$datenbank = "daten.dat"; $datei = fopen($datenbank,"r");
fpassthru($datei);
?>
mfg
THomas
Hi,
So ich denke ich habe das Problem gefunden. Und zwar das mein php-script keine Sonderzeichen verarbeiten kann.
Habe Zweifel, dass das die Problemursache sein soll.
Ich würde das ja mit backslashes lösen
Was denn loesen?
Vermutlich waere es sinnvoller, wenn du Daten, die du in den Kontext HTTP-URL bringst, auch diesem entsprechend behandelst.
In JavaScript gibt es dafuer encodeURIComponent()
MfG ChrisB