今天,对EXT做了一下初步的了解,了解了一些基本用的函数、窗体对象、表单、文本域、按钮,一些基本的函数我列了出来,写了个登陆的demo,是根据别人的例子模仿出来的,见谅哈。
基本函数
Ext.onReady();函数: ExtJS Application的入口,相当于java的main()函数
Ext.MessageBox.alert()函数:弹出对话框
窗体对象
var win = new Ext.Window({});创建一个新的Window窗体对象
title:"窗口":窗体的标题
width:111,height:111:窗体的宽度及高度
iconCls:"loginicon":窗体标题前的图标
html:"<div>这里是窗体的内容</div>":窗体内部显示的html内容
resizable:true:是否调整窗体的大小
modal:true:是否为模态窗体(打开这个窗体后不能对其他窗体进行操作)
closable:true:显示关闭按钮
maximizable:true:显示最大化按钮
minimizable:true:显示最小化按钮
win.show():窗体展示
plain:true:强制与背景色保持协调,默认为false
bodyStyle:与边框的间距
buttonAlign:窗体中button的对齐方式left,center,right(默认为right)
方法
show:打开窗体
hide:隐藏窗体
close:关闭窗体
事件
how:打开窗体时触法
hide:隐藏窗体时触法
close:关闭窗体时触法
表单(form组件)
属性
width,height:宽度及高度
url:字符串,表单提交地址
方法
reset:表单重置
isValid:表单是否验证去全部通过
submit:表单提交
文本框
Ext.QuickTips.init();作用是初始化标签中的Ext:Qtip属性,并赋予显示提示的动作
var txtusername = Ext.form.TextField();创建一个新的TextField文本框对象
allowBlank:false:文本框不能为空
maxLength:20:文本框最大长度为20个字符,但是超过时还是可以输入,但会出现警告
name:"password":表单名称,与服务器交互时按name接收post的参数值
fieldLabel:"用户名":文本框前面显示的文字标题
blankText:"请输入用户名":当非空较验没有通过时的提示信息
maxLengthText:"用户名不能超过20个字符":当最大长度校验没有通过时的提示信息
按钮
var btnsubmit = new Ext.Button();创建一个新的Button按钮对象
text:"提交":按钮上的文字
事件
handler:首发方法处理事件(是一个特殊的listener)
listeners:事件监听(事件名+处理函数)
登陆窗口demo
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>登陆页面</title> <script type="text/javascript" src="Ext/adapter/ext/ext-base.js" ></script> <script type="text/javascript" src="Ext/ext-all.js" ></script> <link rel="stylesheet" href="Ext/resources/css/ext-all.css" /> <style type="text/css"> .loginicon { background-image: url(img/2012062119234296.gif) !important; } </style> <script> Ext.onReady(function(){ Ext.QuickTips.init(); Ext.form.Field.prototype.msgTarget = "side"; var btnsubmitclick = function(){ if(form.getForm().isValid()){ Ext.MessageBox.alert("提示","登陆成功!"); } } var btnresetclick = function(){ form.getForm().reset(); } var txtusername = new Ext.form.TextField({ width:147, allowBlank:false, maxLength:10, fieldLabel:"用户名", blankText:"请输入用户名", maxLengthText:"用户名不能超过10个字符" }); var txtpassword = new Ext.form.TextField({ width:147, allowBlank:false, maxLength:10, name:"password", fieldLabel:"密码", blankText:"请输入密码", maxLengthText:"密码不能超过10个字符" }); var txtcheckcode = new Ext.form.TextField({ width:80, allowBlank:false, maxLength:4, fieldLabel:"验证码", id:"checkcode", blankText:"请输入验证码", maxLengthText:" 验证码为4个字符" }); var btnsubmit = new Ext.Button({ text:"登陆", handler:btnsubmitclick }); var btnreset = new Ext.Button({ text:"重置", handler:btnresetclick }); var form = new Ext.form.FormPanel({ url:"********", labelAlign:"right", labelWidth:45, cls:"loginform", buttonAlign:"center", frame:true, width:230, height:140, style:"margin:3px", html:"<div></div>", items:[txtusername,txtpassword,txtcheckcode], buttons:[btnsubmit,btnreset] }); var win = new Ext.Window({ title:"登陆窗口", iconCls:"loginicon", plain:true, width:250, height:180, resizable:false, shadow:true, modal:true, html:"<div></div>", closable:true, maximizable:true, minimizable:true, animCollapse:true, items:form }); win.show(); var checkcode = Ext.getDom("checkcode"); var checkimage = Ext.get(checkcode.parentNode); checkimage.createChild({ tag:"img", src:"img/checkcode.gif", align:"absbottom", style:"padding-left:20px;cursor:pointer;" }); }); </script> </head> <body> </body> </html>