2016-09-15 4 views
0

이벤트를 사용하지 않고 wicket에서 js 메소드를 호출하려고합니다. 예를 들어, 아래를 참조하십시오 : 내가 달성하고자하는 것은 다음과 같다wicket에서 onclick 또는 onsubmit 버튼없이 js 메소드를 호출하고 싶습니다.

public method(Page params) {  
     Form<?> form = new Form("dataform");  
     form.add(new AjaxFallbackButton("nextPages", form) {   
     @Override 
     public void onSubmit(AjaxRequestTarget target,Form<?> form) { 
     //do something    
     } 
    }); 
     add(form); 
} 

:

나는 사용자가 어느 정도의 시간이 소요되는지 모르겠습니다으로하여 setInterval 방법을 사용 싶지 않다
public method(Page params) {  
    Form<?> form = new Form("dataform");  
    form.add(new AjaxFallbackButton("nextPages", form) {   

    //do something    
     }); 
    add(form); 
} 

양식을 작성하십시오. js 메서드를 호출 할 수있는 다른 방법이 있습니까?

+0

너는 원하는가? 여기서 질문이 명확하지 않습니다. – Jack

+0

js 메소드를 호출하고 싶지만 target.append 또는 response.render와 같은 Ajax의 onSubmit 메소드가 필요하지 않습니다. –

답변

3

난 당신이 정확하게 뭘 원하는지 이해하지 못했지만, 어쩌면 당신은 양식 작성에 renderHead 방법을 사용할 수 있습니다 : 당신은 다음, 사용자가 정확히 제출하려는 해달라고도 시간을 설정하려면 해달라고

public method(Page params) { 
    Form<?> form = new Form("dataform"){ 
     @Override 
     public void renderHead(IHeaderResponse response) { 
      String js ="your js"; 
      response.render(OnDomReadyHeaderItem.forScript(js)); 
      super.renderHead(response); 
     } 
    }; 

    add(form); 
}