me hizo una forma Django simple, con una lista de opciones (en los botones de radio):Django - formulario de mensaje el selecto
class MyForm(forms.Form):
choices=forms.ChoiceField(widget=forms.RadioSelect(), choices=[(k,k) for k in ['one','two','three']],label="choose one")
Me gustaría que el formulario para enviar automáticamente cuando un usuario selecciona una de las opciones . En HTML sencillo que hubiera hecho como
<select name='myselect' onChange="FORM_NAME.submit();">
....
</select>
Pero no sé cómo integrar esto en la clase de formulario sin tener que escribir una plantilla. Específicamente, necesitaría saber FORM_NAME
para poder llamar al FORM_NAME.submit()
en el fragmento de arriba. ¿Se puede hacer sin usar una plantilla?
Manejo de eventos en línea como un atributo de elemento? ¡Eso es una explosión del pasado! Si puede incluir jQuery y entenderlo, elegiría ese enfoque, que le permite soltar fácilmente el atributo onChange, a favor de vincular la acción de envío de formulario al evento de cambio de elemento de selección a través del documento jQuery "listo "evento. Esto se muestra mejor como: '$ (function() {. $ ('# Id_myselect') cambio (function() {this.form.submit();})});' – trojjer
Posteriormente, se podría eliminar el "onchange" atributo del elemento HTML