一個不用寫javascript的ext綜合應用

來源:互聯網
上載者:User

  相信很多人雖然喜歡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);
    }
}

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.