11

ZKフレームワークでは、zulファイル内でjavascript関数を呼び出したいのですが、それは起こりません。

<a label="Click" onClick="popUp();">

popUp() 関数もあります。しかし、私がクリックすると

<script type="text/javascript">
    function createPopUp(url)
    {
        var w = 600;
        var h = 500;
        var left = (screen.width/2)-(w/2);
        var top = (screen.height/2)-(h/2);
        window.open(url,'name','scrollbars=yes,width='+w+', height='+h+', top='+top+', left='+left);
    }
</script>

しかし、そのリンクをクリックすると、次のエラーが表示されます。

Sourced file: inline evaluation of: `` popUp();'' : 
Command not found: popUp() : at Line: 13 : 
in file: inline evaluation of: `` popUp();'' : popUp ( ) 
4

2 に答える 2

8

この問題を解決するために、私は以下の方法で見つけました:

<a label="Click" xmlns:w="http://www.zkoss.org/2005/zk/client" w:onClick="createPopUp('http://www.facebook.com/prabhatsubedi');"/>
于 2012-12-13T06:42:07.853 に答える
1

別の方法として、これを .zul ファイルではなく Java で実現したい場合は、次を使用できます。

label.setWidgetListener(Events.ON_CLICK, "popUp();");

ここjavadocで示されているように

于 2013-01-07T19:35:01.387 に答える