Je crée quelques éléments de cases à cocher à la volée avec jQuery et en les ajoutant à un noeud comme siCréation d'éléments de cases à cocher à la volée avec jQuery - comportement étrange IE
var topics = ['All','Cat1','Cat2'];
var topicContainer = $('ul#someElementId');
$.each(topics, function(iteration, item)
{
topicContainer.append(
$(document.createElement("li"))
.append(
$(document.createElement("input")).attr({
id: 'topicFilter-' + item
,name: item
,value: item
,type: 'checkbox'
,checked:true
})
.click(function(event)
{
var cbox = $(this)[0];
alert(cbox.value);
})
)
.append(
$(document.createElement('label')).attr({
'for': 'topicFilter' + '-' + item
})
.text(item)
)
)
});
Les problèmes je rencontre sont deux -fold (il n'y a que dans IE)
- Les cases à cocher sont ajoutées à la page, mais leur état par défaut est décoché lorsque je spécifie 'true' pour cette valeur. (Le test avec 'vérifié' pour la valeur ne fait aucune différence)
- Lorsque
alert(cbox.value);
est exécuté, la sortie est activée, à chaque fois.
Je pense que le problème principal ici est que j'ai besoin d'un meilleur moyen de définir l'état par défaut des cases à cocher et de définir leur attribut "valeur" par défaut. Mais je n'ai pas encore trouvé un autre moyen.
Remarque: tout ce code fonctionne correctement dans Firefox et Chrome.
Ceci est jQuery 1.3.1 test avec IE 7.0.5730.11
Ceci est correct. Je viens de le confirmer avec quelques tests. –
J'ai rencontré ce problème d'innombrables fois dans IE. Content que cela ait résolu le problème. –
cela a fait ma journée, merci –