def echo(): value = request.post_vars.f_item_category filtered_sub = db(db.t_sub_categories.f_category_id == value).select(db.t_sub_categories.ALL,orderby=db.t_sub_categories.f_sub_category_name, cache=(cache.ram,10),cacheable=True) return dict(filtered_sub = filtered_sub)
echo.html <select id='t_items_f_item_subcategory' class='generic-widget' name='f_item_subcategory'> <option value=''></option> {{for f in filtered_sub:}} <option value='{{=f.id}}'>test</option> {{pass}} </select> It injects into the target div a whole page (layout.html) and inside, it renders "ECHO" then the filtered_sub results as a table, + design, reqwest, response, session, db tables and db stats buttons under it. On Thursday, October 10, 2013 9:03:10 PM UTC+3, Avi A wrote: > > Exactly Starting now... > > On Thursday, October 10, 2013 8:02:40 PM UTC+3, Derek wrote: >> >> Any luck? >> >> On Tuesday, October 8, 2013 6:29:03 AM UTC-7, Avi A wrote: >>> >>> Still stuck with that... >>> Thanks. >>> >>> On Saturday, October 5, 2013 5:29:37 PM UTC+3, Avi A wrote: >>>> >>>> def echo(): >>>> value = request.post_vars.f_item_category >>>> filtered_sub = db(db.t_sub_categories.f_category_id == >>>> value).select(db.t_sub_categories.ALL,orderby=db.t_sub_categories.f_sub_category_name, >>>> >>>> cache=(cache.ram,10),cacheable=True) >>>> filtered_sub = dict(filtered_sub = filtered_sub) >>>> select_header = "<select id='t_items_f_item_subcategory' >>>> class='generic-widget' name='f_item_subcategory'> \ >>>> <option value=''></option>" >>>> select_footer = '</select>' >>>> def select_body(): >>>> for f in filtered_sub: >>>> #return "<option value='f.id'>" + f.f_item_subcategory + >>>> "</option>" >>>> return 'test' >>>> return select_footer + select_body() + select_footer >>>> >>>> This will render 'test' just once(where expected more). >>>> I think the problem is that the filtered_sub = dict() from some reason. >>>> If I replace the return 'test' with: >>>> return "<option value='f.id'>" + f.f_item_subcategory + "</option>" >>>> It flashes an error. >>>> Thanks. >>>> >>>> >>>> >>>> >>>> >>>> >>>> On Saturday, October 5, 2013 10:32:43 AM UTC+3, Avi A wrote: >>>>> >>>>> Thanks. Yes, I will look carefully, but it looks like the html is in >>>>> the controller. >>>>> >>>>> On Saturday, October 5, 2013 2:31:10 AM UTC+3, Derek wrote: >>>>>> >>>>>> This question gets asked frequently here, there should be a FAQ >>>>>> somewhere and this should be in it... >>>>>> >>>>>> Is this what you want? >>>>>> >>>>>> http://www.web2pyslices.com/slice/show/1467/cascading-drop-down-lists-with-ajax >>>>>> >>>>>> On Friday, October 4, 2013 2:04:41 PM UTC-7, Avi A wrote: >>>>>>> >>>>>>> I was exactly pasting it actually :). >>>>>>> >>>>>>> def echo(): >>>>>>> value = request.post_vars.f_item_category >>>>>>> filtered_sub=db(db.t_sub_categories.f_category_id == >>>>>>> value).select(db.t_sub_categories.ALL,orderby=db.t_sub_categories.f_sub_category_name, >>>>>>> >>>>>>> cache=(cache.ram,10),cacheable=True) >>>>>>> >>>>>>> return dict(filtered_sub=filtered_sub) >>>>>>> >>>>>>> >>>>>>> >>>>>>> <select id="t_items_f_item_subcategory" class="generic-widget" >>>>>>> name="f_item_subcategory"> >>>>>>> <option value=""></option> >>>>>>> {{for f in filtered_sub:}} >>>>>>> <option value="{{f.id >>>>>>> }}">{{=f.f_item_subcategory}}</option> >>>>>>> {{pass}} >>>>>>> </select> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Friday, October 4, 2013 11:26:24 PM UTC+3, Avi A wrote: >>>>>>>> >>>>>>>> One more question please, >>>>>>>> so now I have to build the filtered (with the value) sub categories >>>>>>>> select object's html in the controller and return into the target div? >>>>>>>> On Friday, October 4, 2013 11:08:30 PM UTC+3, Avi A wrote: >>>>>>>>> >>>>>>>>> That works...Awesome thanks. >>>>>>>>> >>>>>>>>> On Friday, October 4, 2013 10:14:37 PM UTC+3, Niphlod wrote: >>>>>>>>>> >>>>>>>>>> you where trying the exact same thing on the onselect, and I left >>>>>>>>>> it there as it was. >>>>>>>>>> If you want to send the value of the selected item as a post >>>>>>>>>> variable, use >>>>>>>>>> >>>>>>>>>> ajax('echo', '#t_items_f_item_category', 'target') >>>>>>>>>> >>>>>>>>>> you'll get request.post_vars.f_item_category filled in the echo >>>>>>>>>> function. >>>>>>>>>> >>>>>>>>>> On Friday, October 4, 2013 9:52:42 AM UTC+2, Avi A wrote: >>>>>>>>>>> >>>>>>>>>>> This test returns none: >>>>>>>>>>> def echo(): >>>>>>>>>>> return request.vars.value if request.vars else 'None' >>>>>>>>>>> >>>>>>>>>>> On Thursday, October 3, 2013 8:18:15 PM UTC+3, Avi A wrote: >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> Hi, >>>>>>>>>>>> I'm trying to use the ajax function on a list , with no success >>>>>>>>>>>> so far. >>>>>>>>>>>> >>>>>>>>>>>> def echo(): >>>>>>>>>>>> return request.vars.value >>>>>>>>>>>> >>>>>>>>>>>> <select class="generic-widget" id="t_items_f_item_category" >>>>>>>>>>>> name="f_item_category"> >>>>>>>>>>>> <option value=""></option> >>>>>>>>>>>> {{for c in category:}} >>>>>>>>>>>> <option value='{{=c.id}}' onselect="ajax('echo', >>>>>>>>>>>> ['{{=c.id}}'],'target')" >>>>>>>>>>>> >{{=c.f_category_name}}</option> >>>>>>>>>>>> {{pass}} >>>>>>>>>>>> </select> >>>>>>>>>>>> >>>>>>>>>>>> <div id='target'></div> >>>>>>>>>>>> >>>>>>>>>>>> Thanks. >>>>>>>>>>>> >>>>>>>>>>> >>>>>>> On Friday, October 4, 2013 11:59:54 PM UTC+3, Niphlod wrote: >>>>>>>> >>>>>>>> are you asking to me to read your mind ? :D >>>>>>>> >>>>>>>> On Friday, October 4, 2013 10:26:24 PM UTC+2, Avi A wrote: >>>>>>>>> >>>>>>>>> One more question please, >>>>>>>>> so now I have to build the filtered (with the value) sub >>>>>>>>> categories select object's html in the controller and return into the >>>>>>>>> target div? >>>>>>>>> On Friday, October 4, 2013 11:08:30 PM UTC+3, Avi A wrote: >>>>>>>>>> >>>>>>>>>> That works...Awesome thanks. >>>>>>>>>> >>>>>>>>>> On Friday, October 4, 2013 10:14:37 PM UTC+3, Niphlod wrote: >>>>>>>>>>> >>>>>>>>>>> you where trying the exact same thing on the onselect, and I >>>>>>>>>>> left it there as it was. >>>>>>>>>>> If you want to send the value of the selected item as a post >>>>>>>>>>> variable, use >>>>>>>>>>> >>>>>>>>>>> ajax('echo', '#t_items_f_item_category', 'target') >>>>>>>>>>> >>>>>>>>>>> you'll get request.post_vars.f_item_category filled in the echo >>>>>>>>>>> function. >>>>>>>>>>> >>>>>>>>>>> On Friday, October 4, 2013 9:52:42 AM UTC+2, Avi A wrote: >>>>>>>>>>>> >>>>>>>>>>>> This test returns none: >>>>>>>>>>>> def echo(): >>>>>>>>>>>> return request.vars.value if request.vars else 'None' >>>>>>>>>>>> >>>>>>>>>>>> On Thursday, October 3, 2013 8:18:15 PM UTC+3, Avi A wrote: >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> Hi, >>>>>>>>>>>>> I'm trying to use the ajax function on a list , with no >>>>>>>>>>>>> success so far. >>>>>>>>>>>>> >>>>>>>>>>>>> def echo(): >>>>>>>>>>>>> return request.vars.value >>>>>>>>>>>>> >>>>>>>>>>>>> <select class="generic-widget" id="t_items_f_item_category" >>>>>>>>>>>>> name="f_item_category"> >>>>>>>>>>>>> <option value=""></option> >>>>>>>>>>>>> {{for c in category:}} >>>>>>>>>>>>> <option value='{{=c.id}}' onselect="ajax('echo', >>>>>>>>>>>>> ['{{=c.id}}'],'target')" >>>>>>>>>>>>> >{{=c.f_category_name}}</option> >>>>>>>>>>>>> {{pass}} >>>>>>>>>>>>> </select> >>>>>>>>>>>>> >>>>>>>>>>>>> <div id='target'></div> >>>>>>>>>>>>> >>>>>>>>>>>>> Thanks. >>>>>>>>>>>>> >>>>>>>>>>>> -- 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/groups/opt_out.