Добавьте флажок с jquery в div

Я хочу добавить флажок в div в другой div (с id = "# sensorList" ), а затем привязать к нему некоторые обработчики событий. Я делаю таким образом

/* Add div */
$("#sensorList").append($('<div><code>', { id : sensorId})
.addClass("sensorListItem")
.text(sensorId)
);
/* Adds visibile checkbox */
$("#"+sensorId).append($('', { id : sensorId + "VisibleCheckbox", type:"checkbox", name: sensorId + "VisibleCheckbox"}));
</code>
<p>Кажется, что все нормально, но если я нажму на флажок, он не переключится на проверенный статус!</p>
<p>Любая идея?
Заранее благодарю вас.</p>
<p>Мне очень жаль, я понял, где проблема.
Мне не удалось установить флажок, потому что у меня был обработчик кликов на div с именем sensorId, и я глупо делал: event.preventDefault() (по умолчанию нет поведения по нажатию на div!!!)</p></div>
2 ответа

Это работает для меня. Проверьте jsfiddle: http://jsfiddle.net/pVjNM/

var sensorId = "one";
/* Add div */
$("#sensorList").append($('<div><code>', { id : sensorId })
.addClass("sensorListItem")
.text(sensorId)
);
/* Adds visibile checkbox */
$("#"+sensorId).append($('', { id : sensorId + "VisibleCheckbox", type:"checkbox", name: sensorId + "VisibleCheckbox"}));
$("input[type=checkbox]").each(function(){
 this.click();
 console.log("Should be true:", this.checked);
});
$("input[type=checkbox]").each(function(){
 this.click();
 console.log("Should be false:", this.checked);
});​
</code></div>


попробуйте длинную руку и посмотрите, работает ли она...

$("#"+sensorId).append('');

licensed under cc by-sa 3.0 with attribution.