Django: как отправить форму, когда пользователь нажимает кнопку радио - PullRequest
0 голосов
/ 13 января 2012

Как добавить:

onclick="this.form.submit();"

в форме радиокнопки?Я хотел бы опубликовать свою форму, когда пользователь нажимает на кнопку радио.

class MyForm(forms.Form):

def __init__(self, *args, **kwargs):
    self.news = kwargs.pop('news')
    super(MyForm, self).__init__(*args, **kwargs)
    choices = ([ ("%s" % a.id, "%s" % a.text)  for a in  self.news])
    self.fields['new'] = forms.ChoiceField(choices = choices, widget=forms.RadioSelect())

Я хотел бы получить этот результат в шаблоне:

<input type="radio" id="new" name="new" value="new"  onclick="this.form.submit();">

Ответы [ 2 ]

3 голосов
/ 13 января 2012
self.fields['new'] = forms.ChoiceField(choices = choices, widget=forms.RadioSelect(attrs={'onclick': 'this.form.submit();'}))

пока не самая лучшая идея поместить шаблонную логику в ваши .py файлы.

1 голос
/ 13 января 2012

Как вы генерируете свою форму в шаблоне?Если вы используете {{form.as_p}}, тогда подумайте о том, как визуализировать свою пользовательскую форму, как описано в: Пользовательские формы Django

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...