Aiun Geschrieben 7. November 2007 Teilen Geschrieben 7. November 2007 abend, ich verwende ein Framework in dem die Seite in Views unterteilt ist. jede view ist z.b. eine Liste, ein Formular etz. nun habe ich den fall, das z.B. eine View aus einer suchmaske besteht, die wiederum einen Ajax-Befehl verwendet um in einem Div-Layer das zur View gehört die Liste der ergebnisse zu zeigen. <form> </form> <div> ergebnisse </div> je nach aufruf muss die Suche aber automatisch durchgeführt werden. in dem fall wird die View als normaler a href-Link aufgerufen, per GET kommt ein Parameter, wenn dieser vorhanden ist, wird noch ein <script></script mit in die Ausgabe eingefügt, welches die Suche direkt anstößt. in dem fall sieht das dann so aus: <script> function dosearch() { .... } </script> <form> </form> <div> ergebnisse </div> <!-- GET GEFUNDEN, suche initiieren --> <script> dosearch(1); </script> und nun das Problem. In einem fall, wird die ganze View als Ajax-Rückgabewert in die seite eingefügt. {vorhandene Seite mit div-container} <ajax< {view mit formular} Da aber die definition der funktion "dosearch" und der Aufruf Teil Des View-Inhalts ist, der ja in die bestehende seite eingefügt wird (xajaxresponse->addAssign("divcontainerid","innerHTML",$content) wird weder die definition geparsed, noch ein Aufruf des Javascripts gemacht. andererseits will ich jetzt nicht die ganze view 2x oder so schreiben... Ich suche derzeit nach einem Konzept, um Die Informationen in die Ausgabe einzufügen, unabhängig davon ob Ajax oder nicht. so eine art stack $response->addstatichtml(); $response->addJavascriptcall $response->addJavascriptdefinition .... in der Hoffnung das ich das Problem ausreichend erklärt habe, hat jemand von euch das Problem schonmal gehabt, eine idee oder Weisheit die mir helfen könnte ? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Aiun Geschrieben 8. November 2007 Autor Teilen Geschrieben 8. November 2007 also nochmal zusammengefasst, ich lade eine Seite die javascript-Definitionen und aufrufe enthält per AJAX nach. Der Inhalt wird über element.innerHTML in einen Container eingefügt. Das Problem ist, das scheinbar diese neuen javascript-definitionen nicht geparsed werden, so das der Browser sie nicht kennt. genausowenig werden javascript-aufrufe ausgeführt - letzteres kann ich ja evtl. noch verstehen. Aber ich kann nicht alle definitionen auslagern, das sind teilweise kleine funktionen die nur an dieser einen stelle benötigt werden. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Aiun Geschrieben 9. November 2007 Autor Teilen Geschrieben 9. November 2007 Update: ich habe jetzt eine Klasse dazwischen geschaltet, die abhängig davon, ob es per "normal"-Verbindung oder per Ajax aufgerufen wird, den Javascript-Code an XAJAX übergibt oder direkt in HTML ausgibt. in Firefox, kein Problem. IE 6/7: nada, der Javascript-Code kommt im eval() der XAJAX-Javascriptklasse an, alert(...) hat es gezeigt, ist danach aber nicht verfügbar um aufgerufen zu werden. *grmbl* Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.