You probably have a line in the echo.html file {{extend 'layout.html'}}.
Remove that.
On Thursday, October 10, 2013 11:22:58 AM UTC-7, 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 [email protected].
For more options, visit https://groups.google.com/groups/opt_out.