由于某种原因,我的按钮没有调用脚本,Chrome的控制台回复时出现错误“Unexpected token}”
这是脚本:
<script type="text/javascript" src="js/jquery-1.10.2.min.js">
function printContent(el){
var restorepage = document.body.innerHTML;
var printcontent = document.getElementById(el).innerHTML;
document.body.innderHTML = printcontent;
window.print();
document.body.innderHTML = restorepage;
}
</script>
这是我的按钮:
echo '<center>
<button onclick="printContent("printable");" class="btn btn-default">
<span class="glyphicon glyphicon-print"></span> Print
</button>
</center> ';
回声的原因是我使用PhP根据情况调用按钮。
它假设打印的div看起来像这样:
<div class="container" id="printable">
答案 0 :(得分:7)
您需要关闭导入jQuery的<script>
标记并创建一个新的<script>
标记,您可以在其中放置自己的JavaScript,如下所示:
<script type="text/javascript" src="js/jquery-1.10.2.min.js"></script>
<script>
function printContent(el) {
var restorepage = document.body.innerHTML;
var printcontent = document.getElementById(el).innerHTML;
document.body.innerHTML = printcontent;
window.print();
document.body.innerHTML = restorepage;
}
</script>
如前所述,您在键入innerHTML
时输了一个拼写错误,我修改了上面的代码,并且因为您在onclick
中使用了两次双引号而导致错误,您可以修复将echo
更改为此:
echo '<center>
<button onclick="printContent(\'printable\');" class="btn btn-default">
<span class="glyphicon glyphicon-print"></span> Print
</button>
</center> ';
答案 1 :(得分:0)
我所改变的基本上是从双引号到printContent
内的单引号,但你可以使用反斜杠来逃避双引号。
<center>
<button onclick="printContent('printable')" class="btn btn-default">
<span class="glyphicon glyphicon-print"></span> Print
</button>
</center>
我纠正的是从innderHTML
到innerHTML
的拼写错误以及更正错误的脚本标记。
<script type="text/javascript" src="js/jquery-1.10.2.min.js"></script>
<script>
function printContent(el){
var restorepage = document.body.innerHTML;
var printcontent = document.getElementById(el).innerHTML;
document.body.innerHTML = printcontent;
window.print();
document.body.innerHTML = restorepage;
}
</script>
答案 2 :(得分:0)
改变这个:
document.body.innderHTML = restorepage;
到此:
document.body.innerHTML = restorepage;
并改变这一点:
<button onclick="printContent("printable");" class="btn btn-default">
到此:
<button onclick="printContent(\'printable\');" class="btn btn-default">
我建议您使用CSS而不是<center>
标记。