django提交变更表

时间:2014-05-29 21:55:33

标签: python django forms django-forms submit

您好我在ChoiceField

选择一个选项时尝试提交表单
class ActionForm(forms.Form):
    """ Holds the options for mailbox management """
    choices = ['create new folder', 'delete', 'read', 'unread']
    action = forms.ChoiceField(choices=choices, attrs={'onchange': 'actionform.submit();'})

但是现在我尝试加载表单时会得到一个invallid语法。我很确定attrs={'onchange': 'actionform.submit();'})是问题所在,但不确定如何做到这一点。

1 个答案:

答案 0 :(得分:3)

您需要在字段上设置widget参数并传递attrs参数:

action = forms.ChoiceField(choices=choices, 
                           widget=forms.Select(attrs={'onchange': 'actionform.submit();'}))

此外,choices列表应包含包含两件内容的项目:

choices = [(0, 'create new folder'), (1, 'delete'), (2, 'read'), (3, 'unread')]