使用javascript打印动态内容

使用javascript打印动态内容,javascript,internet-explorer,printing,Javascript,Internet Explorer,Printing,问题 我们有带表格的网页。 用户填写表格并提交。 我需要打印的表格和一些其他内容的数据页 代码1 很酷,但是: 我需要特定的css 在加载内容之前显示打印窗口。。。哎哟 好的 代码2 document.write-在其他情况下,不加载css 在已添加内容的和处window.print 这在所有浏览器中都可以正常工作,但在IE-windows中,如果没有打印对话框,则无法成功加载内容。 我需要帮助! 附笔 CSS with media=print-出于某种原因,这不是一个很好的解决方案 $(doc

问题

我们有带表格的网页。 用户填写表格并提交。 我需要打印的表格和一些其他内容的数据页

代码1

很酷,但是:

我需要特定的css 在加载内容之前显示打印窗口。。。哎哟 好的

代码2

document.write-在其他情况下,不加载css 在已添加内容的和处window.print 这在所有浏览器中都可以正常工作,但在IE-windows中,如果没有打印对话框,则无法成功加载内容。 我需要帮助! 附笔 CSS with media=print-出于某种原因,这不是一个很好的解决方案

$(document).ready(function($){
 $('input[name=sumb_but]').bind('click', function(e){
  e.preventDefault();
  var print_text = "<p>Test " + $('#form').serialize() + "</p>";
  var newWin = window.open('','printWindow','Toolbar=0,Location=0,Directories=0,Status=0,Menubar=0,Scrollbars=0,Resizable=0');
  newWin.document.body.innerHTML = print_text;
  newWin.document.body.onload = function() { newWin.print(); }   

  });
});

这可能有助于

它在IE?页面中成功加载内容时到底做什么或不做什么。更新后,snxTry$window.load代替.ready。load是onload,因此这是最后一个将触发的事件;css未加载。正如我所看到的,您并没有添加css,您需要的是在头部附加css链接,然后将内容放入正文,这是因为当您将css链接放入正文时,它未加载。我把所有的方式,以css文件和css加载。snx!
$(document).ready(function($){
 $('input[name=sumb_but]').bind('click', function(e){
  e.preventDefault();
  var print_text = "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'> <html xmlns='http://www.w3.org/1999/xhtml'> <head> <meta http-equiv='Content-Type' content='text/html; charset=windows-1251' /> <title>Оформление доверенности (простая письменная форма)</title> <link rel='stylesheet' type='text/css' href='/css/print_forms/warrant.css'> </head> <body> <p>Test " + $('#form').serialize() + "</p></body><script type='text/javascript'>window.print();</script></html>";
  var newWin = window.open('','printWindow','Toolbar=0,Location=0,Directories=0,Status=0,Menubar=0,Scrollbars=0,Resizable=0');
  newWin.document.write(print_text);
  });
});
$(document).ready(function($){
 $('input[name=sumb_but]').bind('click', function(e){
  e.preventDefault();
  var print_text = "<p>Test " + $('#form').serialize() + "</p>";
  var newWin = window.open('','printWindow','Toolbar=0,Location=0,Directories=0,Status=0,Menubar=0,Scrollbars=0,Resizable=0');
  newWin.document.body.innerHTML = print_text;
  newWin.document.body.onload = function() { newWin.print(); }   

  });
});