2013-06-20 11 views

答えて

15

あなたにはJavaScriptを使用すると、JavaScriptの機能であなたの改札ページからパラメータが必要な場合

window.onload = function() { 
// do stuff here 
} 

のためにあなたがrenderHeadをオーバーライドして、そこに機能を追加できることを行うことができます。さらに別の

@Override 
public void renderHead(IHeaderResponse response) 
{ 
    super.renderHead(response); 
    String bar = "something"; 
    response.render(JavaScriptHeaderItem.forScript("window.onload = function() {var foo='" + bar + "'}")); 
    // or 
    response.render(OnDomReadyHeaderItem.forScript("functionToCall(" + bar + ");") ; 
} 
+0

"response.render(OnDomReadyHeaderItem.forScript(" testAlert()を試みています; "));" - 私のために働く。ありがとう! – user1328889

10

をAjaxEventBehaviorを次のように作成し、それをページに追加することです。

AjaxEventBehavior event = new AjaxEventBehavior("onload") { 
    @Override 
    protected void onEvent(final AjaxRequestTarget target) { 
     // do stuff here 
     target.appendJavaScript("alert('onload');"); 
    } 
} 
add(event); 
+0

これは私のために働いた。ニースとシンプル。ありがとう。 – user2345093

+1

これをコンポーネントに追加することはできますか?それはページでなければなりませんか?コンポーネントに追加するときに起動しないようです... – Ash

+0

appendJavaScript()は、前述の関数またはJSの部分を追加します。繰り返し呼び出されるWicket関数で使用されると、JSコードは複数回実行され、線形に増加します。 – Srikanta

関連する問題