This is my JavaScript, using jQuery:
$("#E_DIV_H input[value='E,F']").attr('checked', 'checked');
var data = $('#E_DIV_H').html();
$('#copy').html(data);
When it copies the data from one
$("#E_DIV_H input[value='E,F']").attr('checked', 'checked');
Using Firebug, I see that .attr('checked', 'checked') is checking the check box without adding the attribute.
Is there any solution that works cross-browser? I’m using jQuery 1.4.2.
解决方案
To update boolean attribute as checked in jQuery version <1.6, you should use javascript setAttribute() method, e.g:
$("#E_DIV_H input[value='E,F']")[0].setAttribute('checked', true);
If you have more than one element to target, then you have to iterate through collection, e.g:
var els = document.querySelectorAll("#E_DIV_H input[value='E,F']");
for (var i=0; i < els.length; i++) {
els[i].setAttribute("checked", true);
}