您的位置:首页 > Web前端 > JavaScript

一个不用写javascript的ext综合应用

2008-02-20 10:15 447 查看
  相信很多人虽然喜欢Ext,却不太喜欢写javascript,一个原因是javascript太灵活、太强大了,所以有时候很难掌控。因此,春节期间仿照http://wlr.easyjf.com上下载的源代码,基于EasyJWeb1.1,使用了其中Rich Component技术写了一个跟williamraym的单用户blog功能完全一样ExtJS综合应用,不同在于这里不需要manage.js、core.js、topic.js等众多的javascript代码,所有的组件及自定义控件都是在服务器用java书写。

  这个应用演示了如何在用java代码写ExtJS的各种控件,如何对各种事件进行响应,如何与服务器端进行集成等。用java的好处是多方面的,有兴趣的朋友慢慢体会。

应用示例地址:http://wlr2.easyjf.com
源代码下载地址:ftp://ftp1.easyjf.com/easyjweb/demo/blog2.zip
 ExtJS相关的技术资料:http://wlr.easyjf.com  
 在线《ExtJS2.0实用简明教程》:http://www.easyjf.com/blog/html/20080217/1179671.html
 关于EasyJWeb1.1:http://www.easyjf.com/html/20080218/2424833.html http://wiki.easyjf.com/display/wiki/EasyJWeb

  让我们一起携起手来,支持国产开源,从我做起。

  应用截图:



(日志分类管理)



(后用户管理)

  管理员登录的AdminLoginAction中的代码:

  




public class AdminLoginAction extends RichComponentAction ...{




public void doIndex() ...{


Window win = new Window("win1", "登陆系统", 265, 140);


win.setClosable(false);


Form f = new Form("fp");


f.setLabelAlign("right");


f.setLabelWidth(55);


f.set("bodyStyle", "padding-top:6px");


f.set("frame", true);


f.getDefaults().put("width", 158);


TextField tf1 = new TextField("userName", "帐号");


tf1.set("cls", "user");


TextField tf2 = new TextField("password", "密码");


tf2.setInputType("password");


tf2.set("cls", "key");


f.add(tf1, tf2);


win.add(f);


Function success = new ActionFunction(


"window.location.href = 'manage.ejf';");


Function failure = new ActionFunction(


"form.reset();if(action.failureType == Ext.form.Action.SERVER_INVALID)Ext.MessageBox.alert('警告',action.result.errors.msg);");


FormAction action = new FormAction("action1",


"portal.ejf?cmd=adminLogin", success, failure);


action.setWaitMsg("请稍后...");


Button b = new Button("登陆", new Function(


"var fp=Ext.getCmp('fp');fp.form.submit(action1);"));


Button b2 = new Button("重置", new Function(


"var fp=Ext.getCmp('fp');fp.form.reset();"));


win.addButtons(b, b2);


win.show();


this.addComponents(action, win);


}


}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: