在jQuery级别或DOM级别,复选框的checked属性必须有一些特殊之处。使用此HTML:
<html>
<body>
<input id="cb" type="checkbox" />
</body>
</html>
这个JavaScript:
$(function() {
$("#cb").attr("checked","checked");
alert("Expecting this HTML fragment to have a 'checked' attribute:\n\n"
+ $("body").html());
});
我没有达到我的期望;如果我使用“已检查”之外的属性名称,它将按预期工作。
我试图让它工作的原因是我需要获取HTML,因为它存在于浏览器DOM中并将其转换为PDF,因此用户可以获得页面的PDF版本,因为它们是看着它;它在客户端被大量操作,因此直接从服务器获取正确的HTML并不是一个简单的选择。
以上是上述代码的工作版本:http://jsfiddle.net/pettys/qTfDP/2/