One of many possible implementations. Here I assume you generate a list of images and corresponding checkboxes beforehand (not with javascript).
HTML (snipped):
<div id="selectable_images">
<img src="/image1.jpg" rel="ch_image_1"/>
<input style="display:none" type="checkbox" id="ch_image_1" value="image1.jpg"/>
<img src="/image2.jpg" rel="ch_image_2"/>
<input style="display:none" type="checkbox" id="ch_image_2" value="image2.jpg"/>
<img src="/image3.jpg" rel="ch_image_3"/>
<input style="display:none" type="checkbox" id="ch_image_3" value="image3.jpg"/>
</div>
JS (jQuery):
$(function() {
$("#selectable_images img").click(function() {
var $this = $(this);
if ($this.hasClass('selected')) {
$("#"+this.rel).attr('checked', false);
$this.removeClass('selected');
} else {
$("#"+this.rel).attr('checked', true);
$this.addClass('selected');
}
})
}
By clicking on the images corresponding checkboxes would be toggled. The selected image would get "selected" class.