How about this: Forget ajaxForm and in the ajax function, if s is a
string, it acts as a jQuery selector, otherwise it acts normally.
That would make it more flexible:
function ajax(u,s,t) {
query = '';
if (typeof s == "string"){
d = jQuery(s).serialize();
if(d){query = d;}
}else{
pcs = [];
for(i=0; i<s.length; i++) {
q = jQuery("#"+s[i]).serialize();
if(q){pcs.push(q);}
}
if (pcs.length>0){query = pcs.join("&");}
}
jQuery.ajax({type: "POST", url: u, data: query, success: function
(msg) { if(t==':eval') eval(msg); else jQuery("#" + t).html
(msg); } });
}
On Aug 28, 2:46 am, mdipierro <[email protected]> wrote:
> I suggest you don't send the entire form but just the state of the
> button you clicked. It will have much faster response.
>
> Massimo
>
> On Aug 28, 12:28 am, "mr.freeze" <[email protected]> wrote:
>
>
>
> > I sent a patch to Massimo but for posterity, here is the fixed ajax
> > function and added an ajaxForm(url,formIndex,targetResponseID)
> > function that grabs the entire form (by index i so use 0 for single
> > form pages):
>
> > function ajax(u,s,t) {
> > query = [];
> > for(i=0; i<s.length; i++) {
> > q = jQuery("#"+s[i]).serialize();
> > if(q){query.push(q);}
> > }
> > jQuery.ajax({type: "POST", url: u, data: query.join("&"), success:
> > function(msg) { if(t==':eval') eval(msg); else jQuery("#" + t).html
> > (msg); } });
>
> > }
>
> > function ajaxForm(u,i,t){
> > frm = jQuery("form:eq(" + i + ")");
> > query = 'undefined=' + i;
> > if (frm.length==1){query = frm.serialize();}
> > jQuery.ajax({type: "POST", url: u, data: query, success: function
> > (msg) { if(t==':eval') eval(msg); else jQuery("#"+t).html
> > (msg); } });
>
> > }
>
> > On Aug 27, 10:01 pm, "mr.freeze" <[email protected]> wrote:
>
> > > I'll submit a patch.
>
> > > On Aug 27, 9:59 pm, Jose <[email protected]> wrote:
>
> > > > On 28 ago, 01:44, "mr.freeze" <[email protected]> wrote:
>
> > > > > Did you try my altered ajax function?
>
> > > > Works well!. You can add it to the trunk?
>
> > > > Jose- Hide quoted text -
>
> - Show quoted text -
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/web2py?hl=en
-~----------~----~----~----~------~----~------~--~---