My controller has a componentized form with an added Cancel button 
like this (this is an excerpt, so sorry for any typos):

def update( ):

  myform = SQLFORM.factory(
    Field('text_in','text',requires=IS_NOT_EMPTY()),
    buttons=[INPUT(_type='submit',_value=T('Update'))],
    _id='myform',
    formstyle='divs'
    )
  form.element('input[type=submit]').parent.append(
    TAG.BUTTON(T('Cancel')),_onclick='ajax("%s",[],":eval");' % URL(
        c='my_controller', f='cancel_update')
    )
  if myform.process(formanem='myform').accepted:
    ...do stuff...
 return dict(myform=myform)



The form submits 
properly when the Update button is pressed. However, when the Cancel 
button is pressed, not only does 
the "cancel_update" callback get called, the form also gets submitted 
erroneously. The question is, why does the "update" action get called and 
its form get submitted at all when the Cancel button is pressed?

-- 



Reply via email to