Well.... a tip to all. When having problems, first give your pc a nice reboot ;)
Suddenly it is working :S Don;t know why, but it is. Thanx for all support! Snef schreef: > Donny Kurnia schreef: > > Snef wrote: > > > When using $.ajax() i encounter some problems. > > > > > > With the ajax I'm calling a script that will return some html. When > > > echoing the returned data, I can see that everything is returned > > > including the javascript tags. > > > > > > When 'inserting' the returned data into a div on the screen, the > > > javascript seems to be executed but i can't see it in the generated > > > source! > > > > > > I cut it all down to some simple insertion of html into a div like > > > this: > > > > > > $("#freediv").html('<h1 id="test">test</h1><script > > > language="javascript" type="text/javascript">alert("Bla");</ > > > script><p>Bla bla</p>'); > > > > > > The html is inserted in #freediv but i can't see the script tags > > > (although alert("Bla") did get executed). > > > > What are you use for debugging? In Firebug, inserted javascript tag is > > not appear in the html tab, but it's executed. See the XMLHttpRequest in > > Console tab to verify the returned response is what you intended (html > > and the javascript code) > > > > > The real problem is when i try to use some jQuery in the html: > > > > > > $("#freediv").html('<h1 id="test">test</h1><script > > > language="javascript" type="text/javascript">$("#test").click(function > > > (){ alert("Bla"});</script><p>Bla bla</p>'); > > > > > > Isn't this possible at all? > > > > It's possible. Just don't forget to wait the DOM loaded: > > > > $("#freediv").html('<h1 id="test">test</h1>'+ > > '<script type="text/javascript>'+ > > 'jQuery(function($){'+ > > ' $("#test").click(function(){'+ > > ' alert("Bla");'+ > > ' });'+ > > '});'+ > > '</script>'); > > > > Watch out for parentheses balance. Write it in indented to easily spot > > the missing parentheses. You code above missing ')' after alert; > > > > > I'm using this to create some 'popup' forms (maybe with SimpleModal) > > > and I want to include some javascript into the response that is > > > specific for that form (like validation and other actions). I know i > > > can use liveQuery or even jQuery's live() but then i need to have all > > > the javascript for every used form already in the main document. > > > > > > I hope you understand my problem ;) > > > > > > > > > > I always use technique like this. My XMLHttpRequest to server will > > return html code and javascript code. It's working well. > > > > -- > > Donny Kurnia > > http://hantulab.blogspot.com > > http://www.plurk.com/user/donnykurnia > > Donny, > > I have correct { } in my code locally ;) was just a typo. > > The problem is that when i use ajax I DO see the correct html in the > response (even when outputting it to firebug with console.debug), but > when inserting it with .html(data) (where data is the actual html/ > javascript), the javascript tags are gone! > > That's why I just tried it with a clean .html(.....) and there is my > problem!