WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   javascript: langer string als übergabeparameter mit document.location=URL (http://www.wcm.at/forum/showthread.php?t=146592)

RaistlinMajere 04.10.2004 18:45

javascript: langer string als übergabeparameter mit document.location=URL
 
folgendes problem. ich lese mittels JS aus einem textfeld einen text aus. dieser wird etwas verändert und soll dann sinngemäß mit

Code:

document.location = file.php?uebergabe=text;
übergeben werden. funzt auch wunderbar, allerdings bin ich vor kurzem auf einen bug draufgekommen, bei allzu langen texten funzt das ganze nämlich nicht. scheitern tuts definitiv bei der übergabe, denn wenn ich mir den übergabeparameter direkt vor der übergabe per alert ausgeben lasse, passt alles.
danach ist jedoch schluß - und ich meine schluß. kein JS-error, es passiert einfach gar nichts.

offenbar dürfte es eine max. länge für übergebene strings geben, wie ich vermute. kann dies davon abhängen, ob diese über GET oder POST übergeben werden? habe ich hier überhaupt eine wahl über die art der versendung, wenn ich das ganze nicht über ein form-submit (wie mans ja öfter macht, da kann ich zwischen GET und POST wählen) bewerkstellige, sondern eben über einen reload (document.location=)?

jak 04.10.2004 21:00

Wieso machst du's nicht mit POST???
<script language="JavaScript">
function check(was){
//Code
return was;
}
</script>
<form method="POST" action="file.php">
<input type="text" name="textfeld">
<input type="button" value="abschicken" onClick="this.textfeld.value=check(this.textfeld.v alue);this.submit()">
</form>
oder:
onClick="check();"
und
function check(){
var was = document.forms[0].textfeld;
was.value=was.value + "was dranhängen";
document.forms[0].submit();
}

Bin mir nicht ganz sicher, ob's stimmt. Du solltest prüfen ob man mit this.textfeld auf's Textfeld zugreifen kann, oder man's mit document.forms[0].textfeld machen muss.
Könnte auch sein daß es nicht .value sondern .text ist.
Jak

RaistlinMajere 04.10.2004 21:32

Zitat:

Original geschrieben von jak
Wieso machst du's nicht mit POST???
Code:

<script language="JavaScript">
function check(was){
//Code
return was;
}
</script>
<form method="POST" action="file.php">
<input type="text" name="textfeld">
<input type="button" value="abschicken" onClick="this.textfeld.value=check(this.textfeld.value);this.submit()">
</form>


hm, also das wird so wohl nicht funktionieren, denn mit "this" sprichst du den button und nicht das formular an.

ich hab aber grundsätzlich verstanden, was du meinst, zuerst den inhalt des textfelds neu beschreiben und dann über POST (dann gibts wohl kein problem mehr mit der stringlänge) submitten. jo, das sollte wohl funzen, thx.

jak 05.10.2004 12:14

Hab eh geschrieben, das ich mir wegen dem this nicht ganz sicher war. In PHP geht $this z.B. auf die aktuelle Klasse. JS hab' ich schon länger nicht verwendet, bin daher ein bischen eingerostet...

Jak


Alle Zeitangaben in WEZ +2. Es ist jetzt 21:58 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag