"I think the main solution to the problem was making sure the formOBJ was extended via $() so that it would have the toQueryString() method available, at least for IE that solved the problem."
Thats the main point, IE elements doesnt get extended by $() by default. You have to use it if you use document.body, for example (you should have to use $(document.body)). Fábio Miranda Costa Engenheiro de Computação http://meiocodigo.com On Fri, Feb 20, 2009 at 3:53 PM, kfancy <[email protected]> wrote: > > Hi Fábio, > > That solution worked... thanks! > > Hi Itay, thanks for the other input as well. FYI, my page is standards- > compliant with proper tag nesting. > I have always used the send(formOBJ.toQueryString()) syntax, because I > found that in mootools docs or examples, and it has worked fine with > all other browsers (and other forms for that matter)... > > I think the main solution to the problem was making sure the formOBJ > was extended via $() so that it would have the toQueryString() method > available, at least for IE that solved the problem. > > cheers > > On Feb 20, 10:41 am, Fábio Costa <[email protected]> wrote: > > You should use $(myformobject).toQueryString() > > > > Fábio Miranda Costa > > Engenheiro de Computaçãohttp://meiocodigo.com > > > > On Fri, Feb 20, 2009 at 3:28 PM, Itay Moav <[email protected]> > wrote: > > > Oh, and why do you put params in the send method? If it is activated on > a > > > FORM it will do the collection by itself. > > > > > On Fri, Feb 20, 2009 at 1:27 PM, Itay Moav <[email protected] > >wrote: > > > > >> Your HTML is good , i.e. STANDARD XHTML? > > >> No form tag in wrong place, no open tags etc? > > > > >> On Fri, Feb 20, 2009 at 12:46 PM, kfancy <[email protected]> wrote: > > > > >>> I'm encountering the dreaded "Object doesn't support this property or > > >>> method" error on IE7 / Vista, while trying to submit form data via a > > >>> Request object. > > > > >>> This works fine, but I have to jump through the hoops and collect my > > >>> own data (please note that all variables are properly initialized for > > >>> passing via the data:{} object): > > > > >>> var ajrq = new Request({ > > >>> url:"handler.php", > > >>> onSuccess: function(responseText, responseXML) { > > >>> update_page(responseText); > > >>> }, > > >>> onFailure: function() { alert("Request failed."); } > > >>> }).send({data:{ var1:var1_txt, var2:var2_txt, var3:var3_txt, > > >>> var4:var4_txt }}); > > > > >>> However, if I change my send() line to use the built-in > toQueryString, > > >>> then IE throws an error: > > > > >>> var ajrq = new Request({ > > >>> url:"handler.php", > > >>> onSuccess: function(responseText, responseXML) { > > >>> update_page(responseText); > > >>> }, > > >>> onFailure: function() { alert("Request failed."); } > > >>> }).send(myformobject.toQueryString()); > > > > >>> myformobject is a reference to my HTML form, passed via this.form > > >>> object from the submit button click event. > > > > >>> My form doesn't have anything tricky, just the standard input types > > >>> (text, textarea, select, hidden, checkbox). > > > > >>> Has anybody else encountered this problem, and/or have a solution? >
