Je développe une page web en utilisant django et je veux ajouter du javascript à un formulaire en utilisant jQuery. Fondamentalement, je veux sélectionner une option dans un formulaire en fonction d'une autre sélection. Je dois utiliser le texte de l'option et non les valeurs de l'option car les valeurs de l'option sont générées dynamiquement par django.Sélection d'une option par son texte
Un extrait de mon code:
javascript
$("#id_propietario").change(
function() {
if ($("#id_propietario :selected").text() == '{{ usuario.username }}') {
alert('test');
} else {
$("#id_adeudado").val($("#id_adeudado option[text='{{ usuario.username }}']").val());
}
}
);
éléments de formulaire html
<p><label for="id_propietario">Propietario:</label> <select name="propietario" id="id_propietario">
<option value="" selected="selected">---------</option>
<option value="1">elio</option>
<option value="2">up1</option>
<option value="3">up2</option>
</select></p>
<p><label for="id_adeudado">Adeudado:</label> <select name="adeudado" id="id_adeudado">
<option value="" selected="selected">---------</option>
<option value="1">elio</option>
<option value="2">up1</option>
<option value="3">up2</option>
</select></p>
J'utilise jQuery 1.4, ce comportement a apparemment changé de 1.3 à 1,4 où vous pouvez utiliser directement
$("#id_adeudado").val('{{ usuario.username }}');
Notez que django remplace {{usuario.username}} avec le nom d'utilisateur actuel. Mon code ne fonctionne pas car jQuery ne sélectionne pas l'élément option en utilisant le sélecteur text = 'value'. Comment puis-je résoudre ce problème?
Merci à l'avance
ps: il est ma première fois en utilisant jQuery
lente bas, je vois beaucoup trop de fautes de frappe de vous aujourd'hui ;-) –
@Andy - Distrait par ceci: http://stackoverflow.com/questions/3541541/how-to-know-which-jquery-button-was- click-in-list-context jQuery UI efface la valeur qu'il semble, pas sûr de savoir qui a pris cette sage décision, me rejeter: '( –
cela fonctionne et m'aide à comprendre la philosophie de jQuery. Merci! – eliocs