Hi Massimo et al, First of all, the onvalidation callback that is now in SQLFORM (in trunk) is a real winner, thanks! The validation rules in my app are largely context-sensitive, and that was a big problem -- until now.
I am still struggling to find the best way to customize SQLFORM views, though. The "new" form.element() function only allows me to modify the attributes existing xml nodes -- is that correct? For instance, I needed previous/next buttons in a multi-page form, and I really hate having to handcode entire forms in the html (or in the controller, for that matter). This is what I came up with: # controller form=SQLFORM(db.t2_person,myperson,deletable=False,showid=False) l = len(form.components[0]) # =number of rows in form # add input element to second td in submit row form.components[0][l-1][1].append( INPUT(_type="buttonx") ) # redefine both "submit" and "buttonx" form.element(_type="submit").update(_type="button", _value="<<Previous",_onclick="location='"+URL (r=request,f='step1')+"';") form.element(_type="buttonx").update(_type="submit", _value="Next>>") Basically, I add a new 'dummy' input element and then redefine both inputs using form.element(). This works, but the direct use of the internal form/div structure to insert a new xml node is an eyesore. Is there a better way to do this? Ideally, I'd be looking for a sort of formalized API that I could use to manipulate the entire xml tree of the form, eg, similar to the DOM. Cheers, -Peter --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "web2py Web Framework" group. To post to this group, send email to web2py@googlegroups.com To unsubscribe from this group, send email to web2py+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/web2py?hl=en -~----------~----~----~----~------~----~------~--~---