0

我有一个带有简单窗口描述的 zul 文件,其中包含带有操作的按钮:

<?xml version="1.0" encoding="UTF-8"?>
<zk xmlns:html="http://www.w3.org/1999/xhtml"
    xmlns="http://www.zkoss.org/2005/zul"
    xmlns:zk="http://www.zkoss.org/2005/zk"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.zkoss.org/2005/zul http://www.zkoss.org/2005/zul/zul.xsd">

    <window title="My First Window" border="normal" width="200px">
    <button label="click me" action="onclick:initObj()" />
      <script type="text/javascript" defer="true">
                 function initObj() {
                    alert('initObj invoked');
                    zkJScriptObject.init();
                }
                zkJScriptObject = {
                   init: function () {
                     alert('init invoked');
                    }
                };
      </script>
    </window>
</zk>

单击按钮成功调用 Javascript 函数 initObj() 并在 FireFox 和 IE 中显示警报,但在 Google Chrome 中会导致错误“Uncaught ReferenceError: initObj is not defined”。你有什么建议吗,谷歌浏览器出现这个问题的原因是什么,我该如何解决?

PS 我正在使用 ZK 3.6.3。

聚苯乙烯。指定的 zul 描述呈现到该 html 代码中:

<div id="zkau_798" z.type="zul.wnd2.Wnd2" z.autoz="true" class="z-window-embedded" style="width:200px;"
     z.zcls="z-window-embedded" z.minheight="100" z.minwidth="200">
    <div class="z-window-embedded-tl">
        <div class="z-window-embedded-tr"></div>
    </div>
    <div class="z-window-embedded-hl">
        <div class="z-window-embedded-hr">
            <div class="z-window-embedded-hm">
                <div id="zkau_798!caption" class="z-window-embedded-header">My First Window</div>
            </div>
        </div>
    </div>
    <div id="zkau_798!cave" class=" z-window-embedded-cnt">
    <span z.type="zul.btn.Button" id="zkau_799" class="z-button" z.zcls="z-button">
        <table id="zkau_799!box"
                  cellspacing="0"
                  cellpadding="0" border="0"
                  class="z-button"
                  onclick="initObj()"
                  style="-webkit-user-select: none; ">
        <tbody>
            <tr>
                <td class="z-button-tl">
                    <button id="zkau_799!real" class="z-button"></button>
                </td>
                <td class="z-button-tm"></td>
                <td class="z-button-tr"></td>
            </tr>
            <tr>
                <td class="z-button-cl"></td>
                <td class="z-button-cm">click me</td>
                <td class="z-button-cr">
                    <div></div>
                </td>
            </tr>
            <tr>
                <td class="z-button-bl"></td>
                <td class="z-button-bm"></td>
                <td class="z-button-br"></td>
            </tr>
        </tbody>
    </table>
    </span>
        <script id="zkau_800" type="text/javascript" defer="defer">
            function initObj() {
                alert('initObj invoked');
                zkJScriptObject.init();
            }
            zkJScriptObject = {
                init: function () {
                    alert('init invoked');
                }
            };
        </script>
    </div>
</div>
4

0 回答 0