I have a field named category:
db.define_table('mytab',
    Field('categ', db.categ, label=T('Category'),
        default=12,
        requires=IS_IN_DB(db, 'categ.id', '%(name)s', zero=None),
        ),

I create a dynamic form for this field, whose value is submitted by ajax:
    form = SQLFORM.factory(db.mytab, record=db.mytab[id])
    form.element('select#no_table_categ')['_onchange'] = (
        'ajax("%s",["categ"],":eval");' % URL(c='mycontroller', 
f='cb_update_categ'))

and the form's category field is rendered by form.custom.widget.categ.

I get a pulldown menu of categories, as desired. This is not rendered as a 
multi-list, nor is a multi-list desired. So far, so good. 

However, upon change, what gets passed to the cb_update_categ() action is 
not a single value but a list of values. This is not expected. Only 1 value 
is expected.

Can anyone explain why this would be happening?

Reply via email to