WEB开发网
开发学院软件开发Java 创建并扩展Apache Wicket Web应用 阅读

创建并扩展Apache Wicket Web应用

 2010-06-30 00:00:00 来源:WEB开发网   
核心提示: 用户点击该链接时,整个Web页面会被重新加载,创建并扩展Apache Wicket Web应用(10),很多情况下,我们都想在后台执行此操作,我们才不用编写单独的JavaScript代码,或手动链接到JavaScript库,只更新或改变页面的一部分内容,使用AJAX能轻松做到这一点

用户点击该链接时,整个Web页面会被重新加载。很多情况下,我们都想在后台执行此操作,只更新或改变页面的一部分内容。使用AJAX能轻松做到这一点,如清单12所示。

清单12:带有AJAX链接的Wicket面板。

// package信息 
import org.apache.wicket.ajax.AjaxRequestTarget; 
import org.apache.wicket.ajax.markup.html.AjaxFallbackLink; 
import org.apache.wicket.markup.html.basic.Label; 
import org.apache.wicket.markup.html.panel.Panel; 
import org.apache.wicket.model.PropertyModel; 
 
public class AjaxApproach extends Panel { 
 
  private int clickCount = 0; 
 
  public AjaxApproach(String pId) { 
    super(pId); 
 
    final Label label = new Label("clickLabel", new PropertyModel(this, "clickCount")); 
    label.setOutputMarkupId(true); 
    add(label); 
 
    add(new AjaxFallbackLink("link") { 
      @Override 
      public void onClick(AjaxRequestTarget pTarget) { 
        clickCount++; 
        if (pTarget != null) { 
          pTarget.addComponent(label); 
        } 
 
      } 
    }); 
  } 
 
} 

比较这两种方法,我们看到只修改了少量的内容。AJAX链接的onClick方法里,我们接收了一个AjaxRequestTarget对象。 AjaxRequestTarget对象用来标识AJAX请求中将被更新的组件。如果我们使用的Web浏览器不支持 JavaScript,AjaxRequestTarget对象就会为null。除此之外,源代码几乎是相同的,而且清单13所示的XHTML标记在两种方法中都能使用。仅用了几行Java代码,我们就能更新Web页面的组件,而无需刷新整个页面。多亏了Wicket内置的AJAX引擎,我们才不用编写单独的JavaScript代码,或手动链接到JavaScript库。后台会自动添加所有基本的JavaScript功能。

上一页  5 6 7 8 9 10 

Tags:创建 扩展 Apache

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接