调用加载打印

时间:2013-10-08 04:18:33

标签: javascript joomla

我在Joomla中有一个页面,在单击打印按钮元素后打开一个弹出窗口。这是运行“public function render

的脚本
    public function render($params = array()) {

    $params = $this->app->data->create($params);

    // include assets css
    $this->app->document->addStylesheet('elements:itemprint/assets/css/itemprint.css');

    if ($this->app->request->getBool('print', 0)) {

        // Hide respond form from the printing view
        $this->app->document->addStyleDeclaration('#comments #respond { display:none; }');

        // Hide comments if requested
        if (!$params->get('showcomments', true)) {
            $this->app->document->addStyleDeclaration('#comments { display:none; }');
        }

        return '<a class="element-print-button" onclick="window.print(); return false;" href="#"></a>';
        /*return '<a class="element-print-button" window.onload="window.print();" href="#"></a>';*/

注意元素打印按钮。目前它设置为点击打印我希望它在加载时打印。我无法将onload函数插入到body标签中,因为此页面是使用$ params = array

动态创建的

2 个答案:

答案 0 :(得分:0)

这个怎么样:

return '<a class="element-print-button" onclick="window.print(); return false;" href="#"></a><script>window.onload=window.print();</script>';

免责声明:我不知道Joomla是如何工作的,但这只是一个Javascript解决方案。

答案 1 :(得分:0)

  

我无法将onload函数插入到body标签

然后你可以使用<script>

window.onload = function() { … }

代替。

但Joomla并没有像f.e.那样整合和推广JS库。 jQuery还是什么呢?那些应该提供执行代码onload或ready的方法,而不必通过HTML属性依赖像oldschool方法那样的事件处理程序......