Javascript kennt mein php-array nicht
Nicksname
- javascript
Hallo,
ich habe einige Textareas, die ich über ein array per POST weitergebe.
PHPseitig läuft auch alles allerbestens, nur kann dann leider mein javascriptcode
document.forms.Testform.arr_textarea[225].value = "Hallo Welt!"
nichts mit meinem array anfangen.
Muss ich also das array über eine Schleif aufdröseln und in neue Variablen ala arr_textarea_225 verpacken oder gibt es hier eine komfortablere Lösung?
Grüße, Nick
h1,
nichts mit meinem array anfangen.
Da Du schon mindestens der Zweite bist, der meint, mit JavaScript sollte ein Zugriff auf PHP-Arrays möglich sein: Woher hast Du denn das?
Hotti
h1,
nichts mit meinem array anfangen.
Da Du schon mindestens der Zweite bist, der meint, mit JavaScript sollte ein Zugriff auf PHP-Arrays möglich sein: Woher hast Du denn das?
Hotti
also aufdröseln?
h1,
nichts mit meinem array anfangen.
Da Du schon mindestens der Zweite bist, der meint, mit JavaScript sollte ein Zugriff auf PHP-Arrays möglich sein: Woher hast Du denn das?
Hotti
also aufdröseln?
ne, zusammenbringen.
Hotti
also aufdröseln?
ne, zusammenbringen.
Hotti
Hi Hotti,
ich merk schon, das wird ne längere Aktion mit Dir.
Ok, ich spiel Dein Spielchen mit, ich setz mir schonmal nen Kaffee auf...
Was meinst du mit "zusammenbringen"?
Und bitte glaub nicht, dass ich davon ausgehe, dass Du mir das beantwortest anstelle mir die Gegenfrage zu stellen, was ich mir aufdröseln meine...
Und Danke für Deine Hilfe im Voraus.
Gruß, Nick
hi,
Was meinst du mit "zusammenbringen"?
Dein PHP-Arry und DOM. Du kannst es so machen wie ich hier beschrieben habe:
http://rolfrost.de/cgi-bin/aary.cgi
Wobei es sicher auch noch andere Lösungen gibt.
Hotti
Hi!
PHPseitig läuft auch alles allerbestens, nur kann dann leider mein javascriptcode
document.forms.Testform.arr_textarea[225].value = "Hallo Welt!"
nichts mit meinem array anfangen.
Was genau soll er denn womit anfangen? Suchst du einfach nur eine Möglichkeit, einen mehrzeiligen String javascriptsyntaxgerecht zu notieren?
[...] oder gibt es hier eine komfortablere Lösung?
Der Möglichkeiten gibt es einige, nicht zuletzt auch JSON, das über die erhältlichen Funktionen/Bibliotheken alles transportsicher gestaltet. Aber nicht immer ist alles für jeden Anwendungsfall angemessen/effizient.
Lo!
Was genau soll er denn womit anfangen? Suchst du einfach nur eine Möglichkeit, einen mehrzeiligen String javascriptsyntaxgerecht zu notieren?
Hallo,
das suche ich obendrein.
Aber im Grunde gehts darum, dass folgendes nur funktioniert, wenn anstelle von Testform.arr_textarea[201] eben jeweils Testform.arr_textarea_201 steht.
<script type="text/javascript">
function show(a,b) {
document.getElementById(a).style.display = "block";
document.getElementById(b).style.display = "none";
document.forms.Testform.arr_textarea[201].value = "Hallo Welt!"
}
</script>
<style type="text/css">
span.aa { display:none; }
</style>
<input type="Radio" name="XYZ" value="ja" id="r0" onclick="show('d0','d1')" checked>ja
<input type="Radio" name="XYZ" value="nein" id="r1" onclick="show('d1','d0')">nein <BR><BR>
<span class="aa" id="d0"></span>
<span class="aa" id="d1"><U>Inhalt:</U><BR><BR><TEXTAREA NAME="arr_textarea[201]" rows=5 cols=20></textarea></span>
Aber Du hast recht, in meinem 2. Thread suche ich nach einer Möglichkeit, meinen Value, der hier im Beispiel mit "Hallo Welt!" gefüllt ist, so zu behandeln, dass anstattdessen auch mehrzeiliger Text mit allen beliebigen Sonderzeichen beinhaltet sein darf und mein Javascript deshalb nicht seionen Dienst versagt.
Gruß, Nick
Hi!
Aber im Grunde gehts darum, dass folgendes nur funktioniert, wenn anstelle von Testform.arr_textarea[201] eben jeweils Testform.arr_textarea_201 steht.
document.forms.Testform.arr_textarea[201].value = "Hallo Welt!"
<span class="aa" id="d1"><U>Inhalt:</U><BR><BR><TEXTAREA NAME="arr_textarea[201]" rows=5 cols=20></textarea></span>
Ach, du meinst den Wert im Name-Attribut. Sag das doch bitte gleich.
Hier kollidieren die Zeichen [] mit der Javascript-Syntax, die diese Zeichen nicht als Literal eines Bezeichners erlaubt. Eine Variable darf durchaus einen Namen mit diesen Zeichen führen, aber er darf/kann eben nicht direkt notiert werden.
document.forms.Testform.elements["arr_textarea[201]"].value
wäre eine mögliche Notationsform.
Aber Du hast recht, in meinem 2. Thread suche ich nach einer Möglichkeit, meinen Value, der hier im Beispiel mit "Hallo Welt!" gefüllt ist, so zu behandeln, dass anstattdessen auch mehrzeiliger Text mit allen beliebigen Sonderzeichen beinhaltet sein darf und mein Javascript deshalb nicht seionen Dienst versagt.
Siehe Kontextwechsel-Artikel, da steht auch was zu den Zeilenumbrüchen.
Lo!
Hier kollidieren die Zeichen [] mit der Javascript-Syntax, die diese Zeichen nicht als Literal eines Bezeichners erlaubt. Eine Variable darf durchaus einen Namen mit diesen Zeichen führen, aber er darf/kann eben nicht direkt notiert werden.
document.forms.Testform.elements["arr_textarea[201]"].value
wäre eine mögliche Notationsform.
Arghs!
Und ich dachte, das php-array wird nicht erkannt.
Damit ist dieser Thread und sein Problem gelöst :-)
Also hier erstmal danke an Dich.
Siehe Kontextwechsel-Artikel, da steht auch was zu den Zeilenumbrüchen.
Mache ich später. Ich kenne den auch noch in seiner "alten" Form ausßerhalb des Wikis. Also der ist nicht wirklich neu für mich.
Gruß, Nick
Hi!
document.forms.Testform.elements["arr_textarea[201]"].value
wäre eine mögliche Notationsform.
Und ich dachte, das php-array wird nicht erkannt.
Begrifflichkeiten richtig zu verwenden erleichtert das Verständnis von Problemen ungemein. Das ist kein PHP-Array sondern ein Attributinhalt mit Sonderzeichen drin. Derzeit interessiert nur, dass er in der Form benötigt wird. Dass damit PHP automatisch ein Array in $_GET/$_POST erzeugt, ist für den Moment nicht von Belang, weswegen auch ein "PHP-Array" in der Betrachtung des Problems eher stört.
Lo!
Hi!
Nachtrag:
Begrifflichkeiten richtig zu verwenden erleichtert das Verständnis von Problemen ungemein.
Auch wenn die Begrifflichkeiten noch nicht sitzen, kann man versuchen, ein Problem verständlich darzustellen. Das ist nicht immer einfach und erfordert Übung. Mitunter hilft es, sich in Gedanken einen Erklärbären vorzustellen. Dieser hat so gut wie keine Ahnung, worum es in einem konkreten Fall geht, er muss noch nicht einmal Programmierkenntnisse haben. Aber er soll das Problem verstehen. Also formuliere in deinen Gedanken das Problem so, dass es der Erklärbär deine Erklärung verstehen kann. Notfalls muss man es dafür aus seiner Umgebung herauslösen, damit man gezielt das eigentliche Problem betrachten kann und nicht noch jede Menge Nebenwirkungen aus dem Drumherum darauf einwirken.
Lo!
Begrifflichkeiten richtig zu verwenden erleichtert das Verständnis von Problemen ungemein. Das ist kein PHP-Array sondern ein Attributinhalt mit Sonderzeichen drin. Derzeit interessiert nur, dass er in der Form benötigt wird. Dass damit PHP automatisch ein Array in $_GET/$_POST erzeugt, ist für den Moment nicht von Belang, weswegen auch ein "PHP-Array" in der Betrachtung des Problems eher stört.
'Wußte ich schlicht nicht.
Danke, Nick