newHtml += "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>";
    newHtml += "<html xmlns='http://www.w3.org/1999/xhtml'>";你插入了这些顶级结构,本页面的结构已被破坏,你还按照原有的结构去取元素对象,当然取不到了。

解决方案 »

  1.   

    我不插入顶级结构还是一样function GoPrint(PrintContent) {
        var html = $(PrintContent).html();
        var bodyHtml = document.body.innerHTML;
        document.body.innerHTML = html;
        window.print();
        document.body.innerHTML = bodyHtml;
    }
      

  2.   

    window.print()之后,用location.reload()重新加载一下页面就好了