Doing this will get the same results: 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 filtered_sub ###dict(filtered_sub = filtered_sub)
On Thursday, October 10, 2013 9:51:14 PM UTC+3, Avi A wrote: > > I have replaced echo.html with echo.load and now it only renders the table > without the layout.html. > > On Thursday, October 10, 2013 9:22:58 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) >> 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.