Ok, thanks. Should've noticed the highlighted word in editor. But if it's javascript, then why doesn't it throw errors with Firefox?
On Sep 27, 3:55 pm, Mike McNally <emmecin...@gmail.com> wrote: > You can always quote the word "do" on the left side of the colon: > > { "do": "something", x: y } > > It's not a bug, it's part of the Javascript language. > > > > On Sun, Sep 27, 2009 at 7:49 AM, indre1 <ind...@gmail.com> wrote: > > > Tested, it can be bypassed with ajax(): > > > $.ajax({ > > type: "GET", > > url: "profile.php", > > data: "do=addfriend&id=2" > > }); > > > But is the get and "do" thing a bug? > > > On Sep 27, 3:37 pm, indre1 <ind...@gmail.com> wrote: > >> After 3 DAYS, I finally figured it out: > >> $.get('profile.php', { do: 'addfriend', id: userId } > > >> The problem is, that the word "do" is reserved or something, thus you > >> can't use it in get, ajax and probably elsewhere. test.php? > >> do=something will never work from jQuery then, or how should I escape > >> it? > >> Is this a bug or just something everyone has to know? Strangely, on FF > >> it all worked. > > >> $.get('profile.php', { action: 'addfriend', id: userId } works > >> perfectly. > > >> On Sep 27, 1:27 pm, indre1 <ind...@gmail.com> wrote: > > >> > Well, the problem still seems to be in the get() function. For > >> > example, IE gives the following error: Object doesn't support this > >> > property or method > >> > With: > >> > (function($) { > >> > $.fn.followUser = function(userId) { > >> > this.fadeOut(250, function(){ > >> > $.get('profile.php', { do: "addfriend", id: userId }, > >> > function > >> > (data){ > >> > return this.html('<p>Follower > >> > added</p>').fadeIn(250); > >> > }); > >> > }); > >> > } > > >> > })(jQuery); > > >> > If I remove the whole $.get() part, the error is gone. Chrome will > >> > start fading out too. The code will then look like: > >> > (function($) { > >> > $.fn.followUser = function(userId) { > >> > this.fadeOut(250, function(){ > > >> > }); > >> > } > > >> > })(jQuery); > > >> > I even tried replace the get() with ajax(), but ran into the same > >> > problem. > > >> > Btw, thanks for the attr('rel') suggestion. This is something I was > >> > also looking for, but couldn't figure it out :) The html is now: > >> > <script type="text/Javascript"> > >> > $(function(){ > >> > $('div#followButton a').click(function(){ > >> > $('div#followButton a').followUser($(this).attr('rel')); > >> > });}); > > >> > </script> > > >> > ... > > >> > <div id="followButton"> > >> > <a rel="2">test1</a> > >> > </div> > > >> > On Sep 26, 6:48 pm, Matt Quackenbush <quackfu...@gmail.com> wrote: > > >> > > @ Mike - Thanks for making me take a closer look at the original code. > >> > > I > >> > > get it now. My bad. > > >> > > /me crawls back into his cave to hibernate some more > > -- > Turtle, turtle, on the ground, > Pink and shiny, turn around.