Malgré ce que certains ont dit, value
est en effet un attribut valide pour li
éléments, et cela se reflète dans la propriété value
, mais il est nécessaire d'être un entier (reference):
L'attribut de valeur, s'il est présent, doit être un entier valide donnant la valeur ordinale de l'élément de liste.
...
Si l'attribut value est présent, les agents utilisateurs doivent l'analyser comme un entier, afin de déterminer la valeur de l'attribut. Si la valeur de l'attribut ne peut pas être convertie en un nombre, l'attribut doit être traité comme s'il était absent.L'attribut n'a pas de valeur par défaut.
Si votre code collé était juste une édition rapide et vous vraiment utiliser un entier, votre code ne fonctionnera que si vous ne l'avez pas wrap this
dans une instance jQuery:
HTML:
<li value="3" class="myLi">My element</li>
en utilisant JavaScript jQuery:
$(".myLi").click(function(){
document.getElementById('myText').value=this.value;
// Or
// $('#myText').attr('value', this.value);
});
Si vous souhaitez utiliser une chaîne, sans doute le meilleur pour coller avec la nouvelle HTML5 data-
prefix:
HTML:
<li data-value="myLi" class="myLi">My element</li>
en utilisant JavaScript jQuery:
$(".myLi").click(function(){
document.getElementById('myText').value=$(this).attr('data-value');
// Or
// $('#myText').attr('value', $(this).attr('data-value'));
});
C'est pourquoi l'attribut value apparaît dans la liste des attributs de li dans dreamweaver, merci pour cette réponse. – SmootQ
@Simo: Pas de soucis, heureux que cela a aidé. :-) –