在我的ASP.Net MVC
项目中,我使用window.print()
来允许用户打印当前页面。但是,当我在Windows XP
和IE 8
组合上测试时,我发现实际打印显示所有单选按钮都重置为原始默认选择。
e.g。如果有一组3个单选按钮说“每月”,“每季”和“每年”默认选择“每月”,那么即使我在打印页面之前选择“每年”,实际打印输出显示“每月”为选择。但是在网页上,这个选择仍然是“每年”。
我还使用IE 9
对其进行了测试,模式设置为'IE 8',但未复制。
在打印输出上内部重置单选按钮的原因是什么?这与浏览器兼容性有关吗?
以下是我的页面中一组此类按钮的HTML:
<div>
<input type="radio" id="freq-month" name="repayments" checked="checked" value="Monthly" />
<label for="freq-month">Monthly</label>
<input type="radio" id="freq-fortnight" name="repayments" value="Fortnightly" />
<label for="freq-fortnight">Fortnightly</label>
<input type="radio" id="freq-week" name="repayments" value="Weekly" />
<label for="freq-week">Weekly</label>
</div>
答案 0 :(得分:0)
这是IE&lt; 9中的已知限制。
一种解决方法是打印图像而不是单选按钮。对已选中和未选中的按钮使用两个不同的图像,并通过声明@media print {}将它们设置为仅在打印时可见。然后在用户选择不同的值时切换它们。