Javascript im response eines AJAX request
_daniel_
- javascript
Hallo liebe Forengemeinde!
Ich habe da ein kleines problem und zwar möchte ich ein alert() im response einer AJAX abfrage machen. Mit eval() und dem reinen javascript ohne Javascript tags funktioniert es wunderbar, doch leider ist es für mich so unbrauchbar.
Vielen meiner User haben ein Greasemonkey Skript installiert, welches bei einigen bestimmten wörtern im quelltext auf einer bestimmten seite eine AJAX abfrage an meine Seite macht.
Jetzt möchte ich gerne ein update des Greasemonkey Skripts rausbringen und die user mit eine alert() auf dieses Update aufmerksam machen. Deshalb bringt mir die lösung nichts mit dem eval() weil das ja in das Greasemonkey Skript mit rein müsste.
Deshalb wollte ich mal fragen ob es da noch eine andere Lösung gibt mit der ich einfach in der php datei einen befehl eingebe der diesen alert() auslöst.
Ich hoffe ich habe es einigermaßen verständlich erklärt :o)
Vielen Dank schon mal
...daniel
hi,
Ich hoffe ich habe es einigermaßen verständlich erklärt :o)
Nein, nicht einmal ansatzweise.
Hotte
hi,
»» Ich hoffe ich habe es einigermaßen verständlich erklärt :o)
Nein, nicht einmal ansatzweise.
Hotte
mhh..schade..
dann mal anders..
Wie kann ich im AJAX response ein Javascript ausführen ohne die eval(response) methode? Also der Javascript code soll dann in der php stehen die mit dem AJAX request abgefragt wird.
Ist das überhaupt möglich?
hi,
»»
»» »» Ich hoffe ich habe es einigermaßen verständlich erklärt :o)
»»
»» Nein, nicht einmal ansatzweise.
»»
»» Hottemhh..schade..
dann mal anders..
Wie kann ich im AJAX response ein Javascript ausführen ohne die eval(response) methode? Also der Javascript code soll dann in der php stehen die mit dem AJAX request abgefragt wird.
Ist das überhaupt möglich?
OK, hab verstanden?:
Du willst in der AJAX-Response einen Javascript-Code zum UA(UserAgent) schicken, was in der response-Funktion als JavaScript-Code im UA eingebaut und ausgeführt wird. Sozusagen JS-Code per AJAX nachladen.
Sowas hab ich noch nicht gemacht. Wohl gibt es Methoden, HTML-Elemente wie Listen oder Tabellen nachzuladen (stichwort Nodes, Childs...) aber JavaScript? Sorry, ich muss das mal zurückstellen....
Hotte
»» hi,
»»
»» »» Ich hoffe ich habe es einigermaßen verständlich erklärt :o)
»»
»» Nein, nicht einmal ansatzweise.
»»
»» Hottemhh..schade..
dann mal anders..
Wie kann ich im AJAX response ein Javascript ausführen ohne die eval(response) methode? Also der Javascript code soll dann in der php stehen die mit dem AJAX request abgefragt wird.
Ist das überhaupt möglich?
Wie währe es, wenn du den JS Script in <script> Tags in den Body schiebst :) ?
var body= document.getElementsByTagName("body")[0];
body.innerHTML = body.innerHTML + TagS + JSCode + TagE
Hi!
Ich hoffe ich habe es einigermaßen verständlich erklärt :o)
Halbwegs. Was genau verschickst Du denn? Deinen Angaben entneheme. ich, dass Du scheinbar ganze Scriptbereiche verschickst. Also in Tags eingefasstes JS. Und du hast User die diese Bloecke par Ajax nachladen. Sie haben also eine Variable, die den Scriptblock enthaelt? (nur wofuer? was machen die damit?) Und diese User moechtest Du nun auf ein update hinweisen und stellst Dir vor, dass per alert() zu machen.
Vielleicht verstehe ich Dich nicht, weil ich Greasemonkey nicht kenne.
Aber so wie du das beschreibst, klingt es fuer mich nicht moeglich. Ausser du bringst ein Script raus, dass wirklich per eval integriert wird und deinen Usern dann in einer Variable den bisherigen Scriptblock zur Verfuegung stellt.
alert('neues update');
var scriptblock = "<script...";
Aber dafuer muessten Deine User wohl auch Ihre Scripts umstellen und Du muesstest sie auf die Aenderung hinweisen koennen...
Deshalb wollte ich mal fragen ob es da noch eine andere Lösung gibt mit der ich einfach in der php datei einen befehl eingebe der diesen alert() auslöst.
Das einfachste wäre, wenn du das JS nicht im HTML Code einbaust, sondern in einer separaten Datei.
Struppi.
Hallo liebe Forengemeinde!
Ich habe da ein kleines problem und zwar möchte ich ein alert() im response einer AJAX abfrage machen.
Was steht in der Serverantwort und was macht die alte Version des Greasemonkey-Scripts damit?
Ich vermute mal, es ist HTML-Quellcode und der wird irgendwo ins Dokument eingebunden mit innerHTML?
Dann wirst du es schwer haben - Der JS-Code in script-Elementen, die man mit innerHTML ins Dokument einbaut, wird m.W. nicht automatisch ausgeführt. Ob das bei <script src> auch gilt, wie Struppi vorschlägt, musst du prüfen.
Mathias
Dann wirst du es schwer haben - Der JS-Code in script-Elementen, die man mit innerHTML ins Dokument einbaut, wird m.W. nicht automatisch ausgeführt. Ob das bei <script src> auch gilt, wie Struppi vorschlägt, musst du prüfen.
Mathias
Hi!
Nee das klappt leider auch nicht :(