I have a form which allows a user to download a CSV, given a batch number, 
without having to leave the page.  However, I'd like to allow form 
re-submission, since the user might want to run the CSV export several 
times.  Web2py.js disables buttons on form submission, but is there a 
simple way to suppress this behaviour for a single form?  (I've found I can 
replace the form's .submit() in Javascript, but that seems like 
overengineering, and I'd end up putting boilerplate in any number of views)

def search():
     export_form = FORM(LABEL('Export batch #'),
                    DIV(
                        INPUT(_type='text', _name='number', _class="span2", 
_id="appendedInputButton"),                                        
                        BUTTON(icon_text('Export', 'print'), 
_type='submit', _class='btn'), _class='input-append',                       
 
                        ),
                    _action=URL(export, extension='csv')
                    )
                            
    return dict(export_form=export_form)
    
def export():
    query = idb.tutor_fee.batch == request.vars.number
    tutors = idb(query).select(idb.tutor_fee.ALL)    
    return dict(tutors=tutors)

search.html
{{extend 'layout.html'}}
...
{{=export_form}}

export.csv:
{{    
import cStringIO
stream = cStringIO.StringIO()

tutors.export_to_csv_file(stream)

response.headers['Content-Type']='text/csv'
response.write(stream.getvalue(), escape=False)
}}


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to