2011年7月18日 星期一

【ZK】Javascript 開新視窗

本篇繼上一篇 【ZK】開新視窗 的應用之後

這邊我來介紹一下如何運用 Javascript 的技巧開啟一個新的視窗

當然 ZK 也能夠支援 Javascript 的運作

再運用 Javascript 開心視窗時,程式通常如下

window.open('目標 URL', '', '');  總共可帶三個參數進去

延續之前的例子,當 User select 某個 item 的時候就要開新一個視窗的話

可以在 listbox 的 onSelect 時,執行你所需要的 Javascript

程式大致如下 :


<attribute name="onSelect">    
       <![CDATA[
              String acc_id = Executions.getCurrent().getDesktop().getAttribute("select_id");
              String acc_name = Executions.getCurrent().getDesktop().getAttribute("select_name");
              String userId = Executions.getCurrent().getDesktop().getAttribute("loginId");

              Clients.evalJavaScript("window.open('Page.zul?custName=" + name + "&userId=" + userId + "&Id=" + acc_id + "&from=ci','','top=0,left=0,status=0,resizable=1')");
                       
      ]]>
</attribute>

在 ZK 中可以運用  Clients.evalJavaScript() 來執行 你的 javascript code.

在第三個參數中

指定了新視窗的起始位置 top、left 也就是靠左上角

status = 0 (為 False ) 代表不會顯示瀏覽器上半部的狀態區

resizable=1 (為 True) 代表可以調整大小


沒有留言:

張貼留言