2009-01-21 3 views
0

J'ai donc ce code dans un modèle de Google App Engine:modèle généré ne rendant pas correctement

<select name='voter'> 

{% for voter in allowed_voters %} 

    <option {% ifequal voter last_voter %}selected="yes" {% endifequal %} 
    value='{{voter}}'>{{voter}}</option> 

{% endfor %} 

</select> 

La page ne rend pas la bonne personne sélectionnée, par défaut au lieu de la 1ère option. L'affichage de la source me montre que le html généré a placé l'attribut sélectionné au bon endroit, donc je n'arrive pas à comprendre pourquoi cela ne fonctionne pas.

Répondre

4

option's select attribute est un attribut booléen.

Essayez une des options suivantes:

<option {% ifequal voter last_voter %}selected="selected" {% endifequal %} 
value='{{voter}}'>{{voter}}</option> 


<option {% ifequal voter last_voter %}selected {% endifequal %} 
value='{{voter}}'>{{voter}}</option> 
+0

Merci pour l'aide, il se trouve que le problème était ailleurs. – wodemoneke

0

juste essayer le jeton 'sélectionné' plutôt que selected = "oui"

1

La syntaxe des attributs booléens est différent en HTML et XHTML. Apparemment, vous êtes sortie HTML, et devez utiliser

<option ... selected ...> 

En XHTML que vous utilisez

<option ... selected="selected" ...> 

Il est regrettable que nous avons l'ensemble des types HTML/XHTML et MIME mess avec horriblement non-NORMES navigateurs compatibles. Vous devez juste savoir ce genre de choses pour être sûr que vous crachez des pages qui rendent correctement sur la plupart des navigateurs.

Questions connexes