|
|||
Javascript direkt via XMLHttpRequest ausführen?
Hallo ihr lieben Leut,
versuche gestern eine Kleinigkeit hinzubekommen und bin mir jetzt langsam gar nicht mehr so sicher, ob das überhaupt geht. Im Prinzip will ich den Inhalt einzelner Javascript-Objekte mittels XMLHttpRequest() füllen. mein Ansatz dazu ist auf der Forularseite: HTML-Code:
..... <script type="text/javascript"> var xmlHttp = null; try { xmlHttp = new XMLHttpRequest(); } catch(e) { ....... } if (xmlHttp) { xmlHttp.open('GET', 'exe_js.php', true); xmlHttp.onreadystatechange = function () { if (xmlHttp.readyState == 4) { alert('in '+xmlHttp.responseText); } }; xmlHttp.send(null); } </script> <body> <input type="text" id="textfeld"> </body> HTML-Code:
<script language="javascript"> alert("hier exe_js "); window.opener.document.getElementById('textfeld').value = 'war bei exe_js'; </script> daß im Formularfeld dann ‚war be exe_js’ steht. (Das alert("hier exe_js "); funktioniert natürlich auch nicht) der Scripttext vom exe_js.php kommt richtig beim xmlHttp.responseText an aber ich finde nicht heraus wie den einfach nur ausgeführt. Geht das überhaupt oder ist mein Lösungsansatz einfach nur für’n A....? muß ich den doch erst irgendwo mit xmlHttp.responseText einfügen und auf der Hauptseite ausführen ...z.B. gleich in der Call-Back-Funktion? habe im Mom keine Ideen mehr besten Dank für jeden Tip Gruß Z |
Sponsored Links |
|
|||
Um JavaScript-Code nachzuladen, reicht es einfach ein neues <script>-Element in den <head> einzufügen.
Code:
var head = document.getElementsByTagName('head')[0]; var script= document.createElement("script"); script.type = "text/javascript"; script.src="/path/to/script.js"; head.appendChild( script); Aber pass auf was du da nachladest, nicht das du eine große XSS-Lücke schaffst. Gruß, Max |
Sponsored Links |
|
|||
Hai Maxe,
vorab besten Dank für deine Mühe, aber wenn ich dich richtig verstanden habe hast du mich falsch verstanden bzw. habe ich mich vermutlich nicht ausführlich genug erklärt im exe_js.php eine just-in-time Übergabe von Variablen durch Befragung einer Datenbank ermöglichen so steht im exe_js.php natürlich nicht nur das Javascriptkommando sondern vorher eine SQL-Abfrage HTML-Code:
<?php $name = mysql_find_name_by_mail($_GET[‘mail’]); ?> <script language="javascript"> window.opener.document.getElementById('textfeld').value = '<?php $name ?>'; </script> und in der Datenbank suchen, ob zu dem Begriff Inhalte von anderen Input-Feldern im automatisch ergänzt werden können. z.B. gibt es im Hauptformular die Inputfelder Name und Email und gibt ein User eine Email an, wird der XMLhtmlRequest ausgelöst und automatisch der Name gesucht und ergänzt. ...oder habe ich dich völlig falsch verstanden und mit deinem Lösungsanatz ist das auch zu machen? Gruß Zen |
|
|||
Thanx @ protonenbeschleuniger
war doch meine Ahnung richtig, daß ich die Parameter irgendwie in einer Call-Back übertragen sollte und jatzt habe ich es auch so, wie von dir empfholen, vorher anständig mit JSON verpackt |
Stichwörter |
javascript, xmlhttprequest |
Themen-Optionen | |
Ansicht | |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
html hidden-array aus Formular via javascript füllen | ZENeca | Javascript & Ajax | 8 | 11.07.2011 19:07 |
Javascript nur per Klick ausführen | Vevi313 | Javascript & Ajax | 2 | 06.04.2009 15:17 |
Problem beim ein/ausblenden von Spalten in Tabellen via CSS und JavaScript | chrisol_76 | CSS | 2 | 21.07.2008 17:37 |
JavaScript nach Ajax-Befehl ausführen | wuschba | Javascript & Ajax | 2 | 10.08.2007 19:16 |
JavaScript per Link auf externer Seite ausführen | Engholm | Javascript & Ajax | 1 | 11.08.2006 19:23 |