:( I already have a workaround where I show buttons for starting download for each files that are appended on submit, but I hate that from user experience point of view... I thought about an other solution, where I could get vars values from javascritp once form is submit trought session.var but I am not sure it will work.
Do you know such a library? Thanks Richard On Tue, Mar 18, 2014 at 6:05 PM, Niphlod <niph...@gmail.com> wrote: > content-disposition on ajax requests is not allowed, therefore browser > refuse to show the usual "download as file" dialog, plain and simple :D > > You need to come up with an alternative plan (such as, opening a new > window pointing to the url, open a hidden iframe, using 3rd party libraries > that do the previous, etc) > > > On Tuesday, March 18, 2014 9:59:40 PM UTC+1, Richard wrote: >> >> Hello, >> >> I want to call 2 functions that return a file to be upload/download into >> client computer... I have been able to make the first call page to upload >> file correctly, but I can't figure out how to make upload both files, I >> thought I could solve the issue with ajax call, no lock. >> >> # controller >> >> def form_func_that_call_my_download_funcs(): >> ... >> if form.process().accpet: >> ... >> redirect(URL(c='label', f='download_func1', extension=False, >> vars=dict(var1=var1, **other_vars_dict)), >> client_side=True) # This work for one file as it should... >> ... >> >> >> def shell_func(): >> return dict(a='') >> >> >> # view >> # shell_func() >> <div id="batch_div"> >> {{=LOAD('lotns', 'other_func_that_just_return_so_var_input', >> extension='load', ajax=True, target='batch_div')}} >> <!-- On submit of this view form_func_that_call_my_download_funcs() is >> loaded below with web2py_component() --> >> </div> >> >> <div id="form_func_that_call_my_download_funcs_div"> >> <!-- form_func_that_call_my_download_funcs() loaded here with >> web2py_component() --> >> </div> >> >> >> I try to change form_func_that_call_my_download_funcs() like this : >> >> def form_func_that_call_my_download_funcs(): >> ... >> if form.process().accpet: >> ... >> response.js = "$.get(url='http://127.0.0.1: >> 8000/sgddms/label/download_func1?var1=2676&var1=2673&var1=2678');" >> response.js += "$.get(url='http://127.0.0.1: >> 8000/sgddms/label/download_func2?var1=2676&var1=2673&var1=2678');" # I >> see the call passing in chrome dev tool both the files are not download??? >> Try with $.post() too... >> ... >> >> >> # Here what look my download function, both are the same so I just show >> the important thing in one of them... >> def download_func1(): >> ... >> final = StringIO(final_wordml) >> response.headers['Content-Type'] = 'xml' >> response.headers['Content-Disposition'] = \ >> 'attachment;filename=filename123_%s.xml;' % >> request.now.strftime('%Y-%m-%d_%H-%M-%S-%f') >> response.write(final.getvalue(), escape=False) >> raise HTTP(200, str(final.getvalue()), **response.headers) >> >> >> Thanks for any pointer! >> >> Richard >> > -- > 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 web2py+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > -- 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 web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.