Yes, the purpose was to use json var after the Ajax.Request() block ...
Understood, I will make a function of the rest of the code and pass in the
onSuccess, thanks.

I tried the asynchronous:false with no different result, but I would have to
test again to be sure.

Thx,
Jeremie

2010/3/2 Sergiu Dumitriu <ser...@xwiki.com>

> On 03/02/2010 01:15 AM, Jeremie BOUSQUET wrote:
> > Hello,
> >
> > This is for something I'm trying to develop ... And I'm not sure it has
> > something to do with XWiki, but who knows ?
> >
> > In a page I call a particular init() function like this :
> >
> > Event.observe(window, "load", init);
> >
> > This init() aims at loading some JSON data from another page using Ajax.
> I
> > was inspired by the livetable.js here :-)
> >
> > var json = ""
> > var ajx=new Ajax.Request(  "
> >
> http://localhost:8081/xwiki/bin/view/Dev/JSONProvider?xpage=plain&outputSyntax=plain
> ",
> >
> >     {method:"get",    onSuccess:function(transport)  {  json =
> > eval("("+transport.responseText+")");  }
> >     }
> > )
>
> Wait, do you use json here, after the new Ajax.Request? You can't do
> that. You should put the code using json inside the onSuccess handler.
>
> Alternatively, you can add
> asynchronous: false,
> to the list of parameters to make the call synchronous, which means that
> the new Ajax.Request line will block until the response arrives. But
> this is bad for several reasons: in most of the current browsers it
> blocks the entire browser until the response arrives, so if the server
> is slow to respond, you'll lock the user outside the browser; the method
> might fail, so onSuccess will not be called, and json will still have
> the wrong value.
>
> > This Javascript is in a .js file along with other resources on the server
> > filesystem. It is loaded with $xwiki.jsfx.use(...) .
> > When I debug step by step using Firebug, everything is fine, "json"
> variable
> > contains what I expect.
> > But when I'm not debugging and refresh the page, "json" variable is empty
> > ... (breakpointing AFTER ajax call shows it). Though I can see in Firebug
> > that my Ajax http request finished with a 200 OK code.
> >
> > Do you think it might be linked to the fact this method is called on page
> > load ? I can't see how it's different than other ajax calls in xwiki ...
> >
>
>
> --
> Sergiu Dumitriu
> http://purl.org/net/sergiu/
> _______________________________________________
> users mailing list
> users@xwiki.org
> http://lists.xwiki.org/mailman/listinfo/users
>
_______________________________________________
users mailing list
users@xwiki.org
http://lists.xwiki.org/mailman/listinfo/users

Reply via email to