我有一个隐藏iframe的ASPX页面 我正在尝试:在按钮上单击将另一个页面加载到隐藏的iFrame中并打印它的内容:
$("#shareButtonPrint").click(function () {
$("#PrintFrame").attr('src', '/ProtocolPrintPage.aspx?g=1');
$("#PrintFrame").ready(function () {
window.frames['PrintFrame'].print();
});
});
但上面的代码不起作用。
仅当我在主页加载时加载iframe时才有效:
$("#PrintFrame").attr('src', '/ProtocolPrintPage.aspx?g=1');
$("#shareButtonPrint").click(function () {
//$("#PrintFrame").attr('src', '/ProtocolPrintPage.aspx?g=1');
window.frames['PrintFrame'].print();
});
如何在点击按钮时加载iframe?
答案 0 :(得分:1)
这可能是因为当您尝试打印iframe时尚未加载iframe
也许尝试使用load
代替ready
查看我的示例
http://jsfiddle.net/andyw_/umYkV/451/
仅在最新的chrome + IE8-10中测试过。
另请注意,load
已弃用
http://api.jquery.com/category/deprecated/
新方法是on('load', fn)