Ext 的cookie操作十分简单,
具体的实现代码如下
//var cp = new Ext.state.CookieProvider();
//Ext.state.Manager.setProvider(cp);
//Ext.state.Manager.setProvider(cp);
插入cookie // cp.set("username",username);
获取cookie值 //var defaultvalue=cp.get("username");
/*! * Ext JS Library 3.2.1 * Copyright(c) 2006-2010 Ext JS, Inc. * licensing@extjs.com * http://www.extjs.com/license */ Ext.onReady(function(){ Ext.QuickTips.init(); // turn on validation errors beside the field globally Ext.form.Field.prototype.msgTarget = 'side'; var cp = new Ext.state.CookieProvider(); Ext.state.Manager.setProvider(cp); var defaultvalue=cp.get("username"); var simple = new Ext.FormPanel({ labelWidth: 75, // label settings here cascade unless overridden frame:true, title: 'hello', bodyStyle:'padding:5px 5px 0', width: 350, buttonAlign:"center", defaults: {width: 230}, defaultType: 'textfield', items: [{ fieldLabel: '用户名', name: 'username', allowBlank:false, emptyText:'' },{ fieldLabel: '密码', name: 'password', inputType: 'password' },new Ext.form.Label({ id:"label_notice", text:"notice:please insert your name", style:"text-decoration:underline;text-align:center;text-shadow:#FF0;color:red;" }) ], buttons: [{ text: '登录', handler: function(){ cp.set("username",username); if(simple.getForm().isValid()){ var username = simple.getForm().findField("username").getValue(); var password = simple.getForm().findField("password").getValue();if(username==""||password==""){Ext.Msg.alert("错误","用户名密码不能为空")}}); } return; } },{ text: '重置 ', handler: function(){ if(simple.getForm().isValid()){ var form = simple.getForm().getEl().dom; form.reset(); } } },{ text: '帮助', handler : function(){ help(); } }] }); var window = new Ext.Window({ title: '', width: 400, height:180, layout: 'fit', plain:true, bodyStyle:'padding:5px;', closable:false, items: simple }); //simple.render(document.body); window.show(); });
虽然这样非常容易实现十分简单的cookie操作,但是,refeash 之后, 会自动取到 cookie中username 的值,但是自动检测为空则会报错,郁闷中,估计要阅读源码才会解决。