创建并扩展Apache Wicket Web应用
2010-06-30 00:00:00 来源:WEB开发网用户点击该链接时,整个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功能。
- ››apache设置域名绑定 以及绑定不起作用的排查
- ››apache rewrite将指定URL转向指定的几个服务器
- ››创建SQL2005自动备份,定期删除的维护计划
- ››apache配置文件httpd.comf部分参数说明
- ››Apache+Mysql+PHP+phpMyAdmin+Mac OS X 10.7 Lion...
- ››创建动态表单 javascript
- ››apache+tomcat负载均衡_项目实例
- ››apache mysql php 源码编译使用
- ››Apache添加mod_aspdotnet.so支持ASP.NET配置指南
- ››Apache中改变php.ini的路径
- ››扩展Axis2框架,支持基于JVM的脚本语言
- ››Apache2.2与Tomcat6整合及虚拟主机配置
更多精彩
赞助商链接