﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>PHP博客-苏广贤-随笔分类-Ext</title><link>http://www.phpweblog.net/susam119/category/389.html</link><description>专注成就将来！</description><language>zh-cn</language><lastBuildDate>Sat, 15 Dec 2007 19:11:30 GMT</lastBuildDate><pubDate>Sat, 15 Dec 2007 19:11:30 GMT</pubDate><ttl>60</ttl><item><title>用Ext2+Fleaphp所开发的Crm系统登陆代码</title><link>http://www.phpweblog.net/susam119/archive/2007/12/15/2543.html</link><dc:creator>阿门119</dc:creator><author>阿门119</author><pubDate>Sat, 15 Dec 2007 14:27:00 GMT</pubDate><guid>http://www.phpweblog.net/susam119/archive/2007/12/15/2543.html</guid><wfw:comment>http://www.phpweblog.net/susam119/comments/2543.html</wfw:comment><comments>http://www.phpweblog.net/susam119/archive/2007/12/15/2543.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/susam119/comments/commentRss/2543.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/susam119/services/trackbacks/2543.html</trackback:ping><description><![CDATA[先把登陆方面的放上来供大家参考，本人用Ext也不是很久，希望大家多多指点,代码写得不够精简，呵。<br>以下是Ext代码<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img id=Codehighlighter1_22_2592_Open_Image onclick="this.style.display='none'; Codehighlighter1_22_2592_Open_Text.style.display='none'; Codehighlighter1_22_2592_Closed_Image.style.display='inline'; Codehighlighter1_22_2592_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_22_2592_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_22_2592_Closed_Text.style.display='none'; Codehighlighter1_22_2592_Open_Image.style.display='inline'; Codehighlighter1_22_2592_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedBlock.gif" align=top><span style="COLOR: #000000">Ext.onReady(</span><span style="COLOR: #0000ff">function</span><span style="COLOR: #000000">()</span><span id=Codehighlighter1_22_2592_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_22_2592_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ext.BLANK_IMAGE_URL</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">'..</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">Libs</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">Js</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">resources</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">images</span><span style="COLOR: #000000">/</span><span style="COLOR: #0000ff">default</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">s.gif';<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br><img id=Codehighlighter1_124_223_Open_Image onclick="this.style.display='none'; Codehighlighter1_124_223_Open_Text.style.display='none'; Codehighlighter1_124_223_Closed_Image.style.display='inline'; Codehighlighter1_124_223_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_124_223_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_124_223_Closed_Text.style.display='none'; Codehighlighter1_124_223_Open_Image.style.display='inline'; Codehighlighter1_124_223_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;setTimeout(</span><span style="COLOR: #0000ff">function</span><span style="COLOR: #000000">()</span><span id=Codehighlighter1_124_223_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_124_223_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ext.get('loading').remove();<br><img id=Codehighlighter1_203_215_Open_Image onclick="this.style.display='none'; Codehighlighter1_203_215_Open_Text.style.display='none'; Codehighlighter1_203_215_Closed_Image.style.display='inline'; Codehighlighter1_203_215_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_203_215_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_203_215_Closed_Text.style.display='none'; Codehighlighter1_203_215_Open_Image.style.display='inline'; Codehighlighter1_203_215_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ext.get('loading</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">mask').fadeOut(</span><span id=Codehighlighter1_203_215_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_203_215_Open_Text><span style="COLOR: #000000">{remove:</span><span style="COLOR: #0000ff">true</span><span style="COLOR: #000000">}</span></span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">,&nbsp;</span><span style="COLOR: #000000">250</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;Ext.QuickTips.init();<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;Ext.form.Field.prototype.msgTarget</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">'side';<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top><br><img id=Codehighlighter1_340_2562_Open_Image onclick="this.style.display='none'; Codehighlighter1_340_2562_Open_Text.style.display='none'; Codehighlighter1_340_2562_Closed_Image.style.display='inline'; Codehighlighter1_340_2562_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_340_2562_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_340_2562_Closed_Text.style.display='none'; Codehighlighter1_340_2562_Open_Image.style.display='inline'; Codehighlighter1_340_2562_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;lfm&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;Ext.FormPanel(</span><span id=Codehighlighter1_340_2562_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_340_2562_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;labelAlign:'left',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;labelWidth:</span><span style="COLOR: #000000">80</span><span style="COLOR: #000000">,<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;frame:</span><span style="COLOR: #0000ff">true</span><span style="COLOR: #000000">,<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;buttonAlign:'left',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;title:&nbsp;'润际科技CRM管理系统',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bodyStyle:'padding:5px;',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;width:</span><span style="COLOR: #000000">400</span><span style="COLOR: #000000">,<br><img id=Codehighlighter1_533_813_Open_Image onclick="this.style.display='none'; Codehighlighter1_533_813_Open_Text.style.display='none'; Codehighlighter1_533_813_Closed_Image.style.display='inline'; Codehighlighter1_533_813_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_533_813_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_533_813_Closed_Text.style.display='none'; Codehighlighter1_533_813_Open_Image.style.display='inline'; Codehighlighter1_533_813_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;items:&nbsp;[</span><span id=Codehighlighter1_533_813_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_533_813_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;layout:'form',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;border:</span><span style="COLOR: #0000ff">false</span><span style="COLOR: #000000">,<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;labelSeparator:'：',<br><img id=Codehighlighter1_627_798_Open_Image onclick="this.style.display='none'; Codehighlighter1_627_798_Open_Text.style.display='none'; Codehighlighter1_627_798_Closed_Image.style.display='inline'; Codehighlighter1_627_798_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_627_798_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_627_798_Closed_Text.style.display='none'; Codehighlighter1_627_798_Open_Image.style.display='inline'; Codehighlighter1_627_798_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;items:[</span><span id=Codehighlighter1_627_798_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_627_798_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xtype:'textfield',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fieldLabel:'帐号',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name:&nbsp;'username',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;allowBlank:</span><span style="COLOR: #0000ff">false</span><span style="COLOR: #000000">,<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;anchor:'</span><span style="COLOR: #000000">70</span><span style="COLOR: #000000">%</span><span style="COLOR: #000000">'<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">]<br><img id=Codehighlighter1_815_1133_Open_Image onclick="this.style.display='none'; Codehighlighter1_815_1133_Open_Text.style.display='none'; Codehighlighter1_815_1133_Closed_Image.style.display='inline'; Codehighlighter1_815_1133_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_815_1133_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_815_1133_Closed_Text.style.display='none'; Codehighlighter1_815_1133_Open_Image.style.display='inline'; Codehighlighter1_815_1133_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">,</span><span id=Codehighlighter1_815_1133_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_815_1133_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;layout:'form',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;border:</span><span style="COLOR: #0000ff">false</span><span style="COLOR: #000000">,<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;labelSeparator:'：',<br><img id=Codehighlighter1_909_1118_Open_Image onclick="this.style.display='none'; Codehighlighter1_909_1118_Open_Text.style.display='none'; Codehighlighter1_909_1118_Closed_Image.style.display='inline'; Codehighlighter1_909_1118_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_909_1118_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_909_1118_Closed_Text.style.display='none'; Codehighlighter1_909_1118_Open_Image.style.display='inline'; Codehighlighter1_909_1118_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;items:[</span><span id=Codehighlighter1_909_1118_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_909_1118_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xtype:'textfield',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fieldLabel:'密码',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name:&nbsp;'password',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;inputType:'password',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;anchor:'</span><span style="COLOR: #000000">70</span><span style="COLOR: #000000">%</span><span style="COLOR: #000000">',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;allowBlank:</span><span style="COLOR: #0000ff">false</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">]<br><img id=Codehighlighter1_1135_1808_Open_Image onclick="this.style.display='none'; Codehighlighter1_1135_1808_Open_Text.style.display='none'; Codehighlighter1_1135_1808_Closed_Image.style.display='inline'; Codehighlighter1_1135_1808_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_1135_1808_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1135_1808_Closed_Text.style.display='none'; Codehighlighter1_1135_1808_Open_Image.style.display='inline'; Codehighlighter1_1135_1808_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">,</span><span id=Codehighlighter1_1135_1808_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_1135_1808_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;layout:'column',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;border:</span><span style="COLOR: #0000ff">false</span><span style="COLOR: #000000">,<br><img id=Codehighlighter1_1202_1536_Open_Image onclick="this.style.display='none'; Codehighlighter1_1202_1536_Open_Text.style.display='none'; Codehighlighter1_1202_1536_Closed_Image.style.display='inline'; Codehighlighter1_1202_1536_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_1202_1536_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1202_1536_Closed_Text.style.display='none'; Codehighlighter1_1202_1536_Open_Image.style.display='inline'; Codehighlighter1_1202_1536_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;items:[</span><span id=Codehighlighter1_1202_1536_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_1202_1536_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;layout:'form',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;columnWidth:.</span><span style="COLOR: #000000">8</span><span style="COLOR: #000000">,<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;border:</span><span style="COLOR: #0000ff">false</span><span style="COLOR: #000000">,<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;labelSeparator:'：',<br><img id=Codehighlighter1_1326_1523_Open_Image onclick="this.style.display='none'; Codehighlighter1_1326_1523_Open_Text.style.display='none'; Codehighlighter1_1326_1523_Closed_Image.style.display='inline'; Codehighlighter1_1326_1523_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_1326_1523_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1326_1523_Closed_Text.style.display='none'; Codehighlighter1_1326_1523_Open_Image.style.display='inline'; Codehighlighter1_1326_1523_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;items:[</span><span id=Codehighlighter1_1326_1523_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_1326_1523_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xtype:'textfield',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fieldLabel:'验证码',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name:&nbsp;'code',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;anchor:'</span><span style="COLOR: #000000">88</span><span style="COLOR: #000000">%</span><span style="COLOR: #000000">',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;allowBlank:</span><span style="COLOR: #0000ff">false</span><span style="COLOR: #000000">,<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;maxLength:</span><span style="COLOR: #000000">4</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">]<br><img id=Codehighlighter1_1538_1793_Open_Image onclick="this.style.display='none'; Codehighlighter1_1538_1793_Open_Text.style.display='none'; Codehighlighter1_1538_1793_Closed_Image.style.display='inline'; Codehighlighter1_1538_1793_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_1538_1793_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1538_1793_Closed_Text.style.display='none'; Codehighlighter1_1538_1793_Open_Image.style.display='inline'; Codehighlighter1_1538_1793_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">,</span><span id=Codehighlighter1_1538_1793_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_1538_1793_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;layout:'form',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;columnWidth:.</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">,<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;border:</span><span style="COLOR: #0000ff">false</span><span style="COLOR: #000000">,<br><img id=Codehighlighter1_1632_1780_Open_Image onclick="this.style.display='none'; Codehighlighter1_1632_1780_Open_Text.style.display='none'; Codehighlighter1_1632_1780_Closed_Image.style.display='inline'; Codehighlighter1_1632_1780_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_1632_1780_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1632_1780_Closed_Text.style.display='none'; Codehighlighter1_1632_1780_Open_Image.style.display='inline'; Codehighlighter1_1632_1780_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;items:[</span><span id=Codehighlighter1_1632_1780_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_1632_1780_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xtype:'panel',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hideLabel:</span><span style="COLOR: #0000ff">true</span><span style="COLOR: #000000">,<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name:&nbsp;'codepanel',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;html:'</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">img&nbsp;src</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">?action=code</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">/&gt;</span><span style="COLOR: #000000">'<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">]<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">]<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">],<br><img id=Codehighlighter1_1830_2555_Open_Image onclick="this.style.display='none'; Codehighlighter1_1830_2555_Open_Text.style.display='none'; Codehighlighter1_1830_2555_Closed_Image.style.display='inline'; Codehighlighter1_1830_2555_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_1830_2555_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1830_2555_Closed_Text.style.display='none'; Codehighlighter1_1830_2555_Open_Image.style.display='inline'; Codehighlighter1_1830_2555_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;buttons:&nbsp;[</span><span id=Codehighlighter1_1830_2555_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_1830_2555_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;text:'登陆',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name:'submit',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;style:'margin</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">left:42px;',<br><img id=Codehighlighter1_1952_2545_Open_Image onclick="this.style.display='none'; Codehighlighter1_1952_2545_Open_Text.style.display='none'; Codehighlighter1_1952_2545_Closed_Image.style.display='inline'; Codehighlighter1_1952_2545_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_1952_2545_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1952_2545_Closed_Text.style.display='none'; Codehighlighter1_1952_2545_Open_Image.style.display='inline'; Codehighlighter1_1952_2545_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;handler:&nbsp;</span><span style="COLOR: #0000ff">function</span><span style="COLOR: #000000">()</span><span id=Codehighlighter1_1952_2545_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_1952_2545_Open_Text><span style="COLOR: #000000">{<br><img id=Codehighlighter1_1988_2535_Open_Image onclick="this.style.display='none'; Codehighlighter1_1988_2535_Open_Text.style.display='none'; Codehighlighter1_1988_2535_Closed_Image.style.display='inline'; Codehighlighter1_1988_2535_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_1988_2535_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1988_2535_Closed_Text.style.display='none'; Codehighlighter1_1988_2535_Open_Image.style.display='inline'; Codehighlighter1_1988_2535_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">(lfm.form.isValid())</span><span id=Codehighlighter1_1988_2535_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_1988_2535_Open_Text><span style="COLOR: #000000">{<br><img id=Codehighlighter1_2029_2519_Open_Image onclick="this.style.display='none'; Codehighlighter1_2029_2519_Open_Text.style.display='none'; Codehighlighter1_2029_2519_Closed_Image.style.display='inline'; Codehighlighter1_2029_2519_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_2029_2519_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2029_2519_Closed_Text.style.display='none'; Codehighlighter1_2029_2519_Open_Image.style.display='inline'; Codehighlighter1_2029_2519_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lfm.form.doAction('submit',</span><span id=Codehighlighter1_2029_2519_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_2029_2519_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;url:'</span><span style="COLOR: #000000">?</span><span style="COLOR: #000000">action</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">login',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;params:'',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;method:'post',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;waitTitle:'提示信息',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;waitMsg:'登陆系统中<img src="http://www.phpweblog.net/Images/dot.gif">',<br><img id=Codehighlighter1_2217_2406_Open_Image onclick="this.style.display='none'; Codehighlighter1_2217_2406_Open_Text.style.display='none'; Codehighlighter1_2217_2406_Closed_Image.style.display='inline'; Codehighlighter1_2217_2406_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_2217_2406_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2217_2406_Closed_Text.style.display='none'; Codehighlighter1_2217_2406_Open_Image.style.display='inline'; Codehighlighter1_2217_2406_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;success:</span><span style="COLOR: #0000ff">function</span><span style="COLOR: #000000">(form,action)</span><span id=Codehighlighter1_2217_2406_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_2217_2406_Open_Text><span style="COLOR: #000000">{<br><img id=Codehighlighter1_2261_2319_Open_Image onclick="this.style.display='none'; Codehighlighter1_2261_2319_Open_Text.style.display='none'; Codehighlighter1_2261_2319_Closed_Image.style.display='inline'; Codehighlighter1_2261_2319_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_2261_2319_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2261_2319_Closed_Text.style.display='none'; Codehighlighter1_2261_2319_Open_Image.style.display='inline'; Codehighlighter1_2261_2319_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">(action.result.data</span><span style="COLOR: #000000">==</span><span style="COLOR: #000000">'登陆成功')</span><span id=Codehighlighter1_2261_2319_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_2261_2319_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;window.location</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">?</span><span style="COLOR: #000000">action</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">main';<br><img id=Codehighlighter1_2324_2392_Open_Image onclick="this.style.display='none'; Codehighlighter1_2324_2392_Open_Text.style.display='none'; Codehighlighter1_2324_2392_Closed_Image.style.display='inline'; Codehighlighter1_2324_2392_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_2324_2392_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2324_2392_Closed_Text.style.display='none'; Codehighlighter1_2324_2392_Open_Image.style.display='inline'; Codehighlighter1_2324_2392_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #0000ff">else</span><span id=Codehighlighter1_2324_2392_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_2324_2392_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ext.Msg.alert('提示信息',action.result.data);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">,<br><img id=Codehighlighter1_2439_2505_Open_Image onclick="this.style.display='none'; Codehighlighter1_2439_2505_Open_Text.style.display='none'; Codehighlighter1_2439_2505_Closed_Image.style.display='inline'; Codehighlighter1_2439_2505_Closed_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_2439_2505_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_2439_2505_Closed_Text.style.display='none'; Codehighlighter1_2439_2505_Open_Image.style.display='inline'; Codehighlighter1_2439_2505_Open_Text.style.display='inline';" src="http://www.phpweblog.net/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;failure:</span><span style="COLOR: #0000ff">function</span><span style="COLOR: #000000">()</span><span id=Codehighlighter1_2439_2505_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.phpweblog.net/Images/dot.gif"></span><span id=Codehighlighter1_2439_2505_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ext.Msg.alert('提示信息','操作失败，请联系系统管理员！');<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">]<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;lfm.render('inner');<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000">);</span></div>
<br>以下是Fleaphp的Controller代码<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">&lt;?</span><span style="COLOR: #000000">php<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">///////////////////////////////////////////////////////////////////////////<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//&nbsp;这个文件是&nbsp;RangeCrm&nbsp;项目的一部分<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//&nbsp;Copyright&nbsp;(c)&nbsp;2007&nbsp;-&nbsp;2008&nbsp;www.erange.com.cn<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//&nbsp;要查看完整的版权信息和许可信息，请查看源代码中附带的&nbsp;COPYRIGHT&nbsp;文件，<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//&nbsp;或者访问&nbsp;http://www.erange.com.cn/&nbsp;获得详细信息。</span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//</span><span style="COLOR: #008000">///////////////////////////////////////////////////////////////////////////</span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>FLEA</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">loadClass(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Controller_Default</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;*&nbsp;用户资料控制类<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;*&nbsp;@package&nbsp;AUsers<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;*&nbsp;@author&nbsp;苏广贤&nbsp;susam119@21cn.com<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;*&nbsp;@version&nbsp;0.1<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;</span><span style="COLOR: #008000">*/</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">&nbsp;Controller_AUsers&nbsp;</span><span style="COLOR: #0000ff">extends</span><span style="COLOR: #000000">&nbsp;Controller_Default&nbsp;{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;数据对象<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@var&nbsp;Table_AUsers<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">*/</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$_tbAUsers</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;操作对象<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@var&nbsp;Model_AUsers<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">*/</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$_mlAUsers</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;数据对象<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@var&nbsp;Table_AProfile<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">*/</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$_tbAProfile</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;构造函数<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">*/</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">function</span><span style="COLOR: #000000">&nbsp;__construct(){<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_tbAUsers</span><span style="COLOR: #000000">=&amp;</span><span style="COLOR: #000000">FLEA</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">getSingleton(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Table_AUsers</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_mlAUsers</span><span style="COLOR: #000000">=&amp;</span><span style="COLOR: #000000">FLEA</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">getSingleton(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Model_AUsers</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_tbAProfile</span><span style="COLOR: #000000">=&amp;</span><span style="COLOR: #000000">FLEA</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">getSingleton(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Table_AProfile</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;载入列表界面<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">*/</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">function</span><span style="COLOR: #000000">&nbsp;actionIndex(){<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$rows</span><span style="COLOR: #000000">=</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">pager(</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_tbAUsers</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">20</span><span style="COLOR: #000000">,</span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">users_id&nbsp;desc</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$smarty</span><span style="COLOR: #000000">=</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_getView();<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$smarty</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">assign(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">js</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">APP_JS);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$smarty</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">assign(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">users</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #800080">$rows</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$smarty</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">display(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">admin/users.tpl</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br></span><span style="COLOR: #000000"><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>}<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">?&gt;</span></div>
以下是Fleaphp的Model代码<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">&lt;?</span><span style="COLOR: #000000">php<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">///////////////////////////////////////////////////////////////////////////<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//&nbsp;这个文件是&nbsp;RangeCrm&nbsp;项目的一部分<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//&nbsp;Copyright&nbsp;(c)&nbsp;2007&nbsp;-&nbsp;2008&nbsp;www.erange.com.cn<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//&nbsp;要查看完整的版权信息和许可信息，请查看源代码中附带的&nbsp;COPYRIGHT&nbsp;文件，<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//&nbsp;或者访问&nbsp;http://www.erange.com.cn/&nbsp;获得详细信息。</span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//</span><span style="COLOR: #008000">///////////////////////////////////////////////////////////////////////////</span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>FLEA</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">loadClass(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Controller_Default</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;*&nbsp;用户资料操作类<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;*&nbsp;@package&nbsp;AUsers<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;*&nbsp;@author&nbsp;苏广贤&nbsp;susam119@21cn.com<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;*&nbsp;@version&nbsp;0.1<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;</span><span style="COLOR: #008000">*/</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">&nbsp;Model_AUsers&nbsp;</span><span style="COLOR: #0000ff">extends</span><span style="COLOR: #000000">&nbsp;Controller_Default&nbsp;{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;数据对象<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@var&nbsp;Table_AUsers<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">*/</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$_tbAUsers</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;构造函数<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">*/</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">function</span><span style="COLOR: #000000">&nbsp;__construct(){<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_tbAUsers</span><span style="COLOR: #000000">=&amp;</span><span style="COLOR: #000000">FLEA</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">getSingleton(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Table_AUsers</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;登陆函数<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">*/</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">function</span><span style="COLOR: #000000">&nbsp;login(){<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$rules</span><span style="COLOR: #000000">=</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_tbAUsers</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">meta;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$rules</span><span style="COLOR: #000000">[</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">USERNAME</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">][</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">notEmpty</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">]</span><span style="COLOR: #000000">=</span><span style="COLOR: #0000ff">true</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$rules</span><span style="COLOR: #000000">[</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">PASSWORD</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">][</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">notEmpty</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">]</span><span style="COLOR: #000000">=</span><span style="COLOR: #0000ff">true</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$verifier</span><span style="COLOR: #000000">=&amp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;FLEA_Helper_Verifier();<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$result</span><span style="COLOR: #000000">=</span><span style="COLOR: #800080">$verifier</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">checkAll(</span><span style="COLOR: #800080">$_POST</span><span style="COLOR: #000000">,</span><span style="COLOR: #800080">$rules</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FLEA</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">loadClass(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">FLEA_Helper_ImgCode</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$imgcode</span><span style="COLOR: #000000">=&amp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;FLEA_Helper_ImgCode();<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">(</span><span style="COLOR: #000000">!</span><span style="COLOR: #800080">$imgcode</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">check(</span><span style="COLOR: #800080">$_POST</span><span style="COLOR: #000000">[</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">code</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">])){<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">echo</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">{success:true,data:"验证码不正确"}</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">exit</span><span style="COLOR: #000000">();<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$user</span><span style="COLOR: #000000">=</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_tbAUsers</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">findByUsername(</span><span style="COLOR: #800080">$_POST</span><span style="COLOR: #000000">[</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">username</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">]);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;(</span><span style="COLOR: #000000">!</span><span style="COLOR: #800080">$user</span><span style="COLOR: #000000">){<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">echo</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">{success:true,data:"用户名错误"}</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">exit</span><span style="COLOR: #000000">();<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$pwd</span><span style="COLOR: #000000">=</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_tbAUsers</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">checkPassword(</span><span style="COLOR: #800080">$_POST</span><span style="COLOR: #000000">[</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">password</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">]</span><span style="COLOR: #000000">,</span><span style="COLOR: #800080">$user</span><span style="COLOR: #000000">[</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_tbAUsers</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">passwordField]);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;(</span><span style="COLOR: #000000">!</span><span style="COLOR: #800080">$pwd</span><span style="COLOR: #000000">){<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">echo</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">{success:true,data:"密码错误"}</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">exit</span><span style="COLOR: #000000">();<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$roles</span><span style="COLOR: #000000">=</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_tbAUsers</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">fetchRoles(</span><span style="COLOR: #800080">$user</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$rbac</span><span style="COLOR: #000000">=&amp;</span><span style="COLOR: #000000">FLEA</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">getSingleton(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">FLEA_Com_RBAC</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$sessionUsers</span><span style="COLOR: #000000">=</span><span style="COLOR: #0000ff">array</span><span style="COLOR: #000000">(<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$user</span><span style="COLOR: #000000">[</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_tbAUsers</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">primaryKey]</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$user</span><span style="COLOR: #000000">[</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_tbAUsers</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">usernameField]<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$rbac</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">setUser(</span><span style="COLOR: #800080">$sessionUsers</span><span style="COLOR: #000000">,</span><span style="COLOR: #800080">$roles</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">echo</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">{success:true,data:"登陆成功"}</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br></span><span style="COLOR: #000000">}<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">?&gt;</span></div>
以下是Fleaphp的Table代码<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">&lt;?</span><span style="COLOR: #000000">php<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">///////////////////////////////////////////////////////////////////////////<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//&nbsp;这个文件是&nbsp;RangeCrm&nbsp;项目的一部分<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//&nbsp;Copyright&nbsp;(c)&nbsp;2007&nbsp;-&nbsp;2008&nbsp;www.erange.com.cn<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//&nbsp;要查看完整的版权信息和许可信息，请查看源代码中附带的&nbsp;COPYRIGHT&nbsp;文件，<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//&nbsp;或者访问&nbsp;http://www.erange.com.cn/&nbsp;获得详细信息。</span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>//</span><span style="COLOR: #008000">///////////////////////////////////////////////////////////////////////////</span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>FLEA</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">loadClass(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">FLEA_Com_RBAC_UsersManager</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;*&nbsp;用户资料数据类<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;*&nbsp;@package&nbsp;AUsers<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;*&nbsp;@author&nbsp;苏广贤&nbsp;susam119@21cn.com<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;*&nbsp;@version&nbsp;0.1<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;</span><span style="COLOR: #008000">*/</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">&nbsp;Table_AUsers&nbsp;</span><span style="COLOR: #0000ff">extends</span><span style="COLOR: #000000">&nbsp;FLEA_Com_RBAC_UsersManager&nbsp;{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;数据表名<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@var&nbsp;users<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">*/</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$tableName</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">users</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;数据表主键<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@var&nbsp;users_id<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">*/</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$primaryKey</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">users_id</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;多对多关联<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@var&nbsp;array<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">*/</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$manyToMany</span><span style="COLOR: #000000">=</span><span style="COLOR: #0000ff">array</span><span style="COLOR: #000000">(<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">tableClass</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Table_ARoles</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">joinTable</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">users_roles</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">foreignKey</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">users_id</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">assocforeignKey</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">roles_id</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">mappingName</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">roles</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">/*</span><span style="COLOR: #008000">*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;一对一关联<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;@var&nbsp;array<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">*/</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$hasOne</span><span style="COLOR: #000000">=</span><span style="COLOR: #0000ff">array</span><span style="COLOR: #000000">(<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">tableClass</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Table_AProfile</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">foreignKey</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">users_id</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">mappingName</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">profile</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>}<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">?&gt;</span></div>
<img src ="http://www.phpweblog.net/susam119/aggbug/2543.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/susam119/" target="_blank">阿门119</a> 2007-12-15 22:27 <a href="http://www.phpweblog.net/susam119/archive/2007/12/15/2543.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[转载]Ext的组件结构分析,附Ext组件结构图</title><link>http://www.phpweblog.net/susam119/archive/2007/12/07/2499.html</link><dc:creator>阿门119</dc:creator><author>阿门119</author><pubDate>Fri, 07 Dec 2007 08:05:00 GMT</pubDate><guid>http://www.phpweblog.net/susam119/archive/2007/12/07/2499.html</guid><wfw:comment>http://www.phpweblog.net/susam119/comments/2499.html</wfw:comment><comments>http://www.phpweblog.net/susam119/archive/2007/12/07/2499.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/susam119/comments/commentRss/2499.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/susam119/services/trackbacks/2499.html</trackback:ping><description><![CDATA[相信大家看了Ext2.0后, 印象最深的应该是Ext的组件模式,很好的规范了组件设计,用Manager的统一管理,也是很好的方式.下面简单分析一下Ext的组件结构.<br>
<br>
Ext的所有组件都是扩展于Ext.Component, 而后子类扩展和集成形成了一个单根的组件树.<br>
Ext中使用组件的方式很不一样,可以看一个例子.<br>
<br>
<div class="code_title">js 代码</div>
<div class="dp-highlighter">
<div class="bar"> </div>
<ol class="dp-c" start="1">
    <li class="alt"><span><span class="keyword">var</span><span> formPanel = </span><span class="keyword">new</span><span> Ext.form.FormPanel({  </span></span></li>
    <li class=""><span>      items: [{  </span></li>
    <li class="alt"><span>                xtype: 'hidden',  </span></li>
    <li class=""><span>                name: 'domainId'  </span></li>
    <li class="alt"><span>            },{  </span></li>
    <li class=""><span>                fieldLabel: '姓名',  </span></li>
    <li class="alt"><span>                name: 'name',  </span></li>
    <li class=""><span>                allowBlank:<span class="keyword">false</span><span>  </span></span></li>
    <li class="alt"><span>            },{  </span></li>
    <li class=""><span>                fieldLabel: '权限', </span></li>
    <li class="alt"><span>                xtype: 'combo',  <br>
    </span></li>
    <li class="alt"><span>                name: 'auth'  </span></li>
    <li class=""><span>            },{  </span></li>
    <li class="alt"><span>                fieldLabel: '帐号',  </span></li>
    <li class=""><span>                name: 'account'  </span></li>
    <li class="alt"><span>            },{  </span></li>
    <li class=""><span>                fieldLabel: 'Email',  </span></li>
    <li class="alt"><span>                name: 'email',  </span></li>
    <li class=""><span>                vtype:'email'  </span></li>
    <li class="alt"><span>            },{  </span></li>
    <li class=""><span>                fieldLabel: '启用', </span></li>
    <li class="alt"><span>                xtype: 'checkbox',  <br>
    </span></li>
    <li class="alt"><span>                name: 'enabled'  </span></li>
    <li class=""><span>            }  </span></li>
    <li class="alt"><span>        ]  </span></li>
    <li class=""><span>});  </span></li>
</ol>
</div>
如此这样就能实现一个包含了很多元素的表单, items里面定义了表单要显示的输入框等组件,但是items里面仅仅是简单的json对象,怎么能显示出来各种不同的表单元素呢?<br>
<br>
我们注意到items的每一个元素几乎都有一个xtype属性,这个xtype属性就是描述组件类的关键.<br>
<br>
其实Ext里面的组件(Panel, Form Datepicker等等), 在定义完Class之后, 都会把自己注册到Ext.ComponentMgr里面. 简单看一个box的组件, 在BoxComponent.js文件的最后一行可以看到:<br>
<br>
<div class="code_title">js 代码</div>
<div class="dp-highlighter">
<ol class="dp-c" start="1">
    <li class="alt"><span><span>Ext.reg('box', Ext.BoxComponent);  </span></span></li>
</ol>
</div>
<br>
而在, ComponentMgr.js文件里<br>
<div class="code_title">js 代码</div>
<div class="dp-highlighter">
<div class="bar"> </div>
<ol class="dp-c" start="1">
    <li class="alt"><span><span>        </span><span class="comment">// private</span><span>  </span></span></li>
    <li class=""><span>        registerType : <span class="keyword">function</span><span>(xtype, cls){  </span></span></li>
    <li class="alt"><span>            types[xtype] = cls;  </span></li>
    <li class=""><span>            cls.xtype = xtype;  </span></li>
    <li class="alt"><span>        },  </span></li>
    <li class=""><span>  </span><br></li>
    <li class="alt"><span>        <span class="comment">// private</span><span>  </span></span></li>
    <li class=""><span>        create : <span class="keyword">function</span><span>(config, defaultType){  </span></span></li>
    <li class="alt"><span>            <span class="keyword">return</span><span> </span><span class="keyword">new</span><span> types[config.xtype || defaultType](config);  </span></span></li>
    <li class=""><span>        }  </span></li>
    <li class="alt"><span>    };  </span></li>
    <li class=""><span>}();  </span></li>
    <li class="alt"><span>  </span><br></li>
    <li class=""><span><span class="comment">// this will be called a lot internally,</span><span>  </span></span></li>
    <li class="alt"><span><span class="comment">// shorthand to keep the bytes down</span><span>  </span></span></li>
    <li class=""><span>Ext.reg = Ext.ComponentMgr.registerType;  </span></li>
</ol>
</div>
<br>
其实是执行了<span>registerType 这个方法,方法很简单, 把xtype这个名字和对应的cls放到</span><span>types里面,  而后看到</span><span>create 我们应该会明白了, 以后想创建组件的时候,就调用 </span><span>create({xtype: 'box'}) 就OK了<br>
<br>
那么我们看看items里面的元素是怎么创建的吧, form的继承树中有一个Ext.Container类, 恩,就在这个类里呢:<br>
<br>
<div class="code_title">js 代码</div>
<div class="dp-highlighter">
<div class="bar"> </div>
<ol class="dp-c" start="1">
    <li class="alt"><span><span class="comment">// private</span><span>  </span></span></li>
    <li class=""><span>lookupComponent : <span class="keyword">function</span><span>(comp){  </span></span></li>
    <li class="alt"><span>    <span class="keyword">if</span><span>(</span><span class="keyword">typeof</span><span> comp == 'string'){  </span></span></li>
    <li class=""><span>        <span class="keyword">return</span><span> Ext.ComponentMgr.get(comp);  </span></span></li>
    <li class="alt"><span>    }<span class="keyword">else</span><span> </span><span class="keyword">if</span><span>(!comp.events){  </span></span></li>
    <li class=""><span>        <span class="keyword">return</span><span> </span><span class="keyword">this</span><span>.createComponent(comp);  </span></span></li>
    <li class="alt"><span>    }  </span></li>
    <li class=""><span>    <span class="keyword">return</span><span> comp;  </span></span></li>
    <li class="alt"><span>},  </span></li>
    <li class=""><span>  </span><br></li>
    <li class="alt"><span><span class="comment">// private</span><span>  </span></span></li>
    <li class=""><span>createComponent : <span class="keyword">function</span><span>(config){  </span></span></li>
    <li class="alt"><span>    <span class="keyword">return</span><span> Ext.ComponentMgr.create(config, </span><span class="keyword">this</span><span>.defaultType);  </span></span></li>
    <li class=""><span>},  </span></li>
</ol>
</div>
<br>
恩,基本就是这样了, 希望对大家理解Ext有所帮助<br>
<br>
/************************************************/<br>
附件是我弄的一个Ext的组件结构图, 还附有各个组件的说明, 希望大家喜欢, 大家快下呀....<br><img alt=""  src="http://www.phpweblog.net/images/phpweblog_net/susam119/ext-component-tree.jpg" border="0" height="768" width="587"><br></span><img src ="http://www.phpweblog.net/susam119/aggbug/2499.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/susam119/" target="_blank">阿门119</a> 2007-12-07 16:05 <a href="http://www.phpweblog.net/susam119/archive/2007/12/07/2499.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[转载]EXT核心API详解(一)-Ext</title><link>http://www.phpweblog.net/susam119/archive/2007/12/07/2498.html</link><dc:creator>阿门119</dc:creator><author>阿门119</author><pubDate>Fri, 07 Dec 2007 06:49:00 GMT</pubDate><guid>http://www.phpweblog.net/susam119/archive/2007/12/07/2498.html</guid><wfw:comment>http://www.phpweblog.net/susam119/comments/2498.html</wfw:comment><comments>http://www.phpweblog.net/susam119/archive/2007/12/07/2498.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/susam119/comments/commentRss/2498.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/susam119/services/trackbacks/2498.html</trackback:ping><description><![CDATA[		Ext类<br>addBehaviors( Object obj ) : void<br>对选择的元素 应用事件侦听器,事件名以@附加在结尾,例如<br>addBehaviors({<br>&nbsp;&nbsp; // id=foo下所有的a标签加入click事件<br>&nbsp;&nbsp; '#foo a@click' : function(e, t){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // do something<br>&nbsp;&nbsp; },<br>&nbsp;&nbsp; // 用,分隔多个选择器<br>&nbsp;&nbsp; '#foo a, #bar span.some-class@mouseover' : function(){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // do something<br>&nbsp;&nbsp; }<br>});<br><br><br>apply( Object obj, Object config, Object defaults ) : Object<br>从config拷贝所有的属性到obj,如果有defaults参数,也将拷贝其属性到obj<br><br>applyIf( Object obj, Object config ) : Object<br>从config拷贝所有属性至obj(如果obj未定义相应属性)<br><br>decode(Object obj) : String<br>编码一个对象/数组或其它值为一个json格式字符串(支持对象,数组,日期,字符串)<br><br>destroy( Mixed arg1, Mixed (optional), Mixed (optional) ) : void<br>尝试去移除每个传入的对象,包括DOM,事件侦听者,并呼叫他们的destroy方法(如果存在)<br><br><br>each( Array/NodeList/Mixed array, Function fn, Object scope ) : void<br>利用array中的每个元素迭代调用fn.直到fn返回假,调用格式fn.call(scope || array[i], array[i], i, array);<br><br><br>encode(String json) : Object<br>将一个json格式字符串反序列化为对象<br><br>escapeRe( String str ) : String<br>为字符串正则编码将.在*+?^${}()|[]/\字符前加\<br><br>extend( Object subclass, Object superclass, [Object overrides] ) : void<br>从superclass类继承subclass,overrides参数是要重载的方法列表,详见override<br><br>fly( String/HTMLElement el, [String named] ) : Element<br>得到全局共享的一个浮动元素el,如果有多个浮动元素可以使用命名以避免潜在的冲突<br><br>get( Mixed el ) : Element<br>得到一个Element对象,参数可以是id或DOM节点或已存在的Element对象<br><br>getBody() : Element<br>得到当前文档的body对象<br><br>getCmp( String id ) : Component<br>通过id得到一个Component对象<br><br><br>getDoc() : Element<br>得到当前文档<br><br>getDom( Mixed el ) : HTMLElement<br>通过id或节点或Element对象返回一个DOM节点<br><br><br>id( [Mixed el], [String prefix] ) : String<br>为对象el生成一个惟一id,如果对象本身已有id,将不会被改变(可以使用前导符prefix)<br><br><br>isEmpty( Mixed value, [Boolean allowBlank] ) : Boolean<br>判断值是否为空,null, undefined或空字符串将返回真,如果allowBlank定义为真,空字符串将不被视为空<br><br>namespace( String namespace1, String namespace2, String etc ) : void<br>创建一个命名空间,例<br>Ext.namespace('Company', 'Company.data');<br>Company.Widget = function() { ... }<br>Company.data.CustomStore = function(config) { ... }<br><br>num( Mixed value, Number defaultValue ) : Number<br>将value转为数值,如果value不是合法的数值类型,将返回defaultValue,其实defaultValue并不一定要求是数值类型,只要你愿意<br><br><br>onReady( Function fn, Object scope, boolean override ) : void<br>当文档准备好了之后引发fn,发生在page的onload事件之前,并且图片此时都还没有载入,scope定义执有者,override定义scope是否有默认的选择<br><br><br>override( Object origclass, Object overrides ) : void<br>利用overrides重写origclass的方法,例<br>Ext.override(MyClass, {<br>&nbsp;&nbsp;&nbsp; newMethod1: function(){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // etc.<br>&nbsp;&nbsp;&nbsp; },<br>&nbsp;&nbsp;&nbsp; newMethod2: function(foo){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // etc.<br>&nbsp;&nbsp;&nbsp; }<br>});<br><br>query( String path, [Node root] ) : Array<br>通过path,在root中选择节点数组,path可以是以下四种选择器之一<br>[元素选择器] 例:<br>* 任意节点<br>E 一个E标签元素<br>E F 祖先节点为E的F节点<br>E &gt; F 或 E/F 父节点为E的F节点<br>E + F 前一个兄弟节点为E的F节点<br>E ~ F 前面的兄弟节点中有E的F节点<br>[属性选择器] 例:<br>E[foo] 有foo属性的E节点<br>E[foo=bar] 有foo属性值为bar的E节点<br>E[foo^=bar] foo属性以bar开始的E节点<br>E[foo$=bar] foo属性以bar结尾的E节点<br>E[foo*=bar] foo属性中有bar字符串的E节点<br>E[foo%=2]&nbsp; foo属性能被2整除的E节点<br>E[foo!=bar] foo属性值不为bar的E节点<br>[伪类选择器] 例:<br>E:first-child E节点是父节点中第一个子节点<br>E:last-child E节点是父节点中最后一个子节点<br>E:nth-child(n) E是父节点中每n个节点<br>E:nth-child(odd) E是父节点中的奇数节点<br>E:nth-child(even) E是父节点中的偶数节点<br>E:only-child E是父节点中惟一的子节点<br>E:checked checked属性为真的节点<br>E:first 子孙节点中的第一个E节点<br>E:last&nbsp; 子孙节点中的最后一个E节点<br>E:nth(n) 子孙节点中的第n个E节点<br>E:odd E:nth-child(odd)的简写<br>E:even E:nth-child(even)的简写<br>E:contains(foo)&nbsp; innerHTML属性中含有foo的E节点<br>E:nodeValue(foo) E节点中包含一个值为foo的文本节点<br>E:not(S) 不匹配简单选择器S的E节点<br>E:has(S) 有能匹配简单选择器S的子节点的E节点<br>E:next(S) 下一个兄弟节匹配简单选择器S的E节点<br>E:prev(S) 前一个兄弟节匹配简单选择器S的E节点<br>type( Mixed object ) : String<br>判断对象类型,如果不是下列值之一将返回false<br>[样式选择器] 例:<br>E{display=none} display属性值为none的E节点<br>E{display^=none} display属性值以none开始的E节点<br>E{display$=none} display属性值以none结束的E节点<br>E{display*=none} display属性值含有none子字串的E节点<br>E{display%=2} display属性值能被2整除的E节点<br>E{display!=none} display属性值不等于none的E节点<br><br><br>select( String/Array selector, [Boolean unique], [HTMLElement/String root] ) :CompositeElementLite/CompositeElement<br>在root内通过样式选择器或元素数组selector选择元素或元素列表,unique指示是否只选择惟一值<br><br>urlDecode( String string, [Boolean overwrite] ) : Object<br>将url格式字符串string解码为json对象,overwrite参数指示是否不重写已存在的对象,例<br>Ext.urlDecode("foo=1&amp;bar=2"); //返回 {foo: 1, bar: 2} <br>Ext.urlDecode("foo=1&amp;bar=2&amp;bar=3&amp;bar=4"); //返回 {foo: 1, bar: 4}.<br>Ext.urlDecode("foo=1&amp;bar=2&amp;bar=3&amp;bar=4", true); //返回 {foo: 1, bar: [2, 3, 4]}.<br><br>urlEncode( Object o ) : String<br>将json对象编码为url格式字符串,参见urlDecode<br>&nbsp;&nbsp;&nbsp; &nbsp;<br>type( Mixed object ) : String<br>得到object类型,如果不为以下列举值之一则返回false<br>string/number/boolean/function/object/array/regexp/element/nodelist/textnode/whitespace<img src ="http://www.phpweblog.net/susam119/aggbug/2498.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/susam119/" target="_blank">阿门119</a> 2007-12-07 14:49 <a href="http://www.phpweblog.net/susam119/archive/2007/12/07/2498.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[转载]EXT核心API详解(二)-Array/Date/Function/Number/String</title><link>http://www.phpweblog.net/susam119/archive/2007/12/07/2497.html</link><dc:creator>阿门119</dc:creator><author>阿门119</author><pubDate>Fri, 07 Dec 2007 06:47:00 GMT</pubDate><guid>http://www.phpweblog.net/susam119/archive/2007/12/07/2497.html</guid><wfw:comment>http://www.phpweblog.net/susam119/comments/2497.html</wfw:comment><comments>http://www.phpweblog.net/susam119/archive/2007/12/07/2497.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/susam119/comments/commentRss/2497.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/susam119/services/trackbacks/2497.html</trackback:ping><description><![CDATA[		Array类<br>indexOf( Object o ) : Number<br>object是否在数组中,找不到返回-1;找到返回位置<br>remove( Object o ) : Array<br>从数组中删除指定的对象object,如果找不到object则数组无变化<br><br>Number类<br>constrain( Number min, Number max ) : Number<br>检查数值是否介于min与max之间, 如果大于max 返回max,如果小于min返回min, 否则返回当前值<br><br>String类<br>escape( String string ) : String<br>将string中的'和\替换为\' \\<br><br>format( String string, String value1, String value2 ) : String<br>格式化字符串,例:<br>var cls = 'my-class', text = 'Some text';<br>var
s = String.format('&lt;div class="{0}"&gt;{1}&lt;/div&gt;', cls,
text);// 结果 &lt;div class="my-class"&gt;Some text&lt;/div&gt;<br><br>leftPad( String string, Number size, [String char] ) : String<br>以char将string补齐为size长度,char默认定义空格<br><br>toggle( String value, String other ) : String<br>交换值,如果当前值等于value,则被赋值other,反之等于value,例:<br>sort = sort.toggle('ASC', 'DESC');<br><br>trim() : String<br>去除开头或结尾多余的空格<br><br><br>Date类<br>Date.parseDate( String input, String format ) : Date<br>将字符串string依指定的格式format转换为时间,其中格式定义详见format方法<br>例:dt = Date.parseDate("2006-01-15 3:20:01 PM", "Y-m-d h:i:s A" ); <br><br><br>add( String interval, Number value ) : Date<br>增加时间段,String interval在Data类中已定义<br>Date.MILLI = "ms";<br>Date.SECOND = "s";<br>Date.MINUTE = "mi";<br>Date.HOUR = "h";<br>Date.DAY = "d";<br>Date.MONTH = "mo";<br>Date.YEAR = "y";<br>例var dt2 = new Date('10/1/2006').add(Date.DAY, -5); <br><br>between( Date start, Date end ) : Boolean<br>是否在两个指定的时间之间<br><br>clearTime( Boolean clone ) : Date<br>清除时间信息,如果clone为真,则克隆自已并返回新Date,本身的值并不改变,反之则修改自身的值<br><br>clone() : Date<br>克隆<br><br>format( String format ) : String<br>格式化时间<br>d&nbsp;&nbsp;&nbsp;&nbsp; 两位数的日期&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 01 至 31<br>D&nbsp;&nbsp;&nbsp;&nbsp; 三字母的星期名&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Mon 至 Sun<br>j&nbsp;&nbsp;&nbsp;&nbsp; 一位数的日期&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 1 至 31<br>l&nbsp;&nbsp;&nbsp;&nbsp; 完整的星期名&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Sunday 至 Saturday<br>S&nbsp;&nbsp;&nbsp;&nbsp; 日期的英文顺序刻词尾,两个字符&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; st, nd, rd or th.<br>w&nbsp;&nbsp;&nbsp;&nbsp; 一周中的第几天&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 0 (星期天) 至 6 (星期六)<br>z&nbsp;&nbsp;&nbsp;&nbsp; 一年中的第几天&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 0 至 364 (闰年365 )<br>W&nbsp;&nbsp;&nbsp;&nbsp; ISO-8601 星期数, 周一算一个星期的开始&nbsp;&nbsp;&nbsp; 1 至 53<br>F&nbsp;&nbsp;&nbsp;&nbsp; 月的完整英文名&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; January 至 December<br>m&nbsp;&nbsp;&nbsp;&nbsp; 月,以0前导&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 01 至 12<br>M&nbsp;&nbsp;&nbsp;&nbsp; 三字母的简写月名&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; Jan 至 Dec<br>n&nbsp;&nbsp;&nbsp;&nbsp; 月&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 1 至 12<br>t&nbsp;&nbsp;&nbsp;&nbsp; 本月有多少天&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 28 至 31<br>L&nbsp;&nbsp;&nbsp;&nbsp; 是否闰年&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 1/0<br>Y&nbsp;&nbsp;&nbsp;&nbsp; 完整的年份&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 例: 1999 或 2003<br>y&nbsp;&nbsp;&nbsp;&nbsp; 年的后两位&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 例: 99 或 03<br>a&nbsp;&nbsp;&nbsp;&nbsp; 上午/下午小写&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; am 或 pm<br>A&nbsp;&nbsp;&nbsp;&nbsp; 上午/下午大写&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; AM 或 PM<br>g&nbsp;&nbsp;&nbsp;&nbsp; 小时/12小时制&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 1 至 12<br>G&nbsp;&nbsp;&nbsp;&nbsp; 小时/24小时制&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 0 至 23<br>h&nbsp;&nbsp;&nbsp;&nbsp; 小时/12小时制&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 01 至 12<br>H&nbsp;&nbsp;&nbsp;&nbsp; 小时/24小时制&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 00 至 23<br>i&nbsp;&nbsp;&nbsp;&nbsp; 分钟&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 00 至 59<br>s&nbsp;&nbsp;&nbsp;&nbsp; 秒&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 00 至 59<br>u&nbsp;&nbsp;&nbsp;&nbsp; 毫秒&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 001 至 999<br>O&nbsp;&nbsp;&nbsp;&nbsp; 时区,与格林威治标准时间之差&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 例: +0200<br>T&nbsp;&nbsp;&nbsp;&nbsp; 时区简写&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 例: EST, MDT ...<br>Z&nbsp;&nbsp;&nbsp;&nbsp; 时区间距&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; -43200 至 50400<br>其中Date类内置了几种格式<br>Date.patterns = {<br>&nbsp;&nbsp;&nbsp; ISO8601Long:"Y-m-d H:i:s",<br>&nbsp;&nbsp;&nbsp; ISO8601Short:"Y-m-d",<br>&nbsp;&nbsp;&nbsp; ShortDate: "n/j/Y",<br>&nbsp;&nbsp;&nbsp; LongDate: "l, F d, Y",<br>&nbsp;&nbsp;&nbsp; FullDateTime: "l, F d, Y g:i:s A",<br>&nbsp;&nbsp;&nbsp; MonthDay: "F d",<br>&nbsp;&nbsp;&nbsp; ShortTime: "g:i A",<br>&nbsp;&nbsp;&nbsp; LongTime: "g:i:s A",<br>&nbsp;&nbsp;&nbsp; SortableDateTime: "Y-m-d\\TH:i:s",<br>&nbsp;&nbsp;&nbsp; UniversalSortableDateTime: "Y-m-d H:i:sO",<br>&nbsp;&nbsp;&nbsp; YearMonth: "F, Y"<br>};<br>当然ISO8601Long和ISO8601Short还是非常招人喜欢的<br>例:<br>dt.format(Date.patterns.ISO8601Long);<br>dt.format('Y-m-d H:i:s');<br>&nbsp;<br>getDayOfYear() : Number<br>一年中的第几天,从0开始<br><br>getDaysInMonth() : Number<br>本月有多少天,<br><br>getElapsed( [Date date] ) : Number<br>当前日期对象与date之间相差的毫秒数<br><br>getFirstDateOfMonth() : Date<br>本月的第一天<br><br>getFirstDayOfMonth() : Number<br>本月第一天是星期几<br><br>getGMTOffset() : String<br>时区信息(见格式定义中的'O')<br>getFirstDateOfMonth() : Date<br>本月最后一天<br>&nbsp;<br>getFirstDayOfMonth() : Number<br>本月最后一天是星期几<br><br>getSuffix() : String<br>日期后导符(见格式定义中的S)<br><br>getTimezone() : String<br>时区(见T)<br><br>getWeekOfYear() : Number<br>一年中的第几周(见W)<br><br>isLeapYear() : Boolean<br>是否闰年<br><br><br>Function类<br>createCallback(/*args...*/) : Function<br>创建回叫方法<br><br>createDelegate( [Object obj], [Array args], [Boolean/Number appendArgs] ) :<br>创建委托<br>这两个记法除了传参方式不同,看不出有什么差异都是调用method.apply,createCallback可以看作一个简化版的createDelegate<br>createCallback==&gt;return method.apply(window, args);<br>createDelegate==&gt;return method.apply(obj || window, callArgs);<br>前者参数比较简单,直接传过去了,后者的规则比较复杂点,如果appendArgs为真,args将附加在参数列表之后,如果是数值,args将在参数列表的appendargs位置插入,其它情况下原参将不起作用<br>例:<br>var fn = func1.createDelegate(scope, [arg1,arg2], true)&nbsp; <br>//fn(a,b,c) === scope.func1(a,b,c,arg1,arg2);&nbsp; <br>var fn = func1.createDelegate(scope, [arg1,arg2])&nbsp; <br>//fn(a,b,c) === scope.func1(arg1,arg2);&nbsp; <br>var fn = func1.createDelegate(scope, [arg1,arg2], 1)&nbsp; <br>//fn(a,b,c) === scope.func1(a,arg1,arg2,b,c);&nbsp; <br>var fn = func1.createCallback(arg1, arg2);&nbsp; <br>//fn() === func1(arg1, arg2)&nbsp; <br><br><br>createCallback : function(/*args...*/)&nbsp; <br><br><br>createInterceptor( Function fcn, [Object scope] ) : Function<br>创建阻断方法,如果fcn返回false,原方法将不会被执行<br><br>createSequence( Function fcn, [Object scope] ) : Function<br>创建组合方法,执行原方法+fcn<br><br>defer( Number millis, [Object obj], [Array args], [Boolean/Number appendArgs] ):Number<br>定时执行，隔millis毫秒后执行原方法<img src ="http://www.phpweblog.net/susam119/aggbug/2497.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/susam119/" target="_blank">阿门119</a> 2007-12-07 14:47 <a href="http://www.phpweblog.net/susam119/archive/2007/12/07/2497.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[转载]EXT核心API详解(三)-Ext.Element</title><link>http://www.phpweblog.net/susam119/archive/2007/12/07/2496.html</link><dc:creator>阿门119</dc:creator><author>阿门119</author><pubDate>Fri, 07 Dec 2007 06:46:00 GMT</pubDate><guid>http://www.phpweblog.net/susam119/archive/2007/12/07/2496.html</guid><wfw:comment>http://www.phpweblog.net/susam119/comments/2496.html</wfw:comment><comments>http://www.phpweblog.net/susam119/archive/2007/12/07/2496.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/susam119/comments/commentRss/2496.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/susam119/services/trackbacks/2496.html</trackback:ping><description><![CDATA[		Ext.Element类<br><br>Element( String/HTMLElement element, [Boolean forceNew] )<br>由id或DOM节点创建Element对象<br><br>Element.fly( String/HTMLElement el, [String named] ) : Element<br>由id或DOM节点创建一个全局共享的活动元素,可由named命名以避免可能的冲突<br><br>Element.get( Mixed el ) : Element<br>由id或DOM节点或已存在的Element得到一个Ext.Element对象<br><br>addClass( String/Array className ) : Ext.Element<br>为元素添加一个或多个css类名<br><br>addClassOnClick( String className ) : Ext.Element<br>为点击事件添加和移除css类<br><br>addClassOnFocus( String className ) : Ext.Element<br>为得到和失去焦点添加和移除css类<br><br>addClassOnOver( String className, [Boolean preventFlicker] ) : Ext.Element<br>为鼠标移入移出事件添加和移除css类(该方法未实际使用preventFlicker参数)<br><br>addKeyListener( Number/Array/Object/String key, Function fn, [Object scope] ) : Ext.KeyMap<br>为对象添加按键侦听 key由数值或字符串或{key: (number or array), shift: (true/false), ctrl: (true/false), alt: (true/false)}这样的对象或他们的数组组成<br><br>addKeyMap( Object config ) : Ext.KeyMap<br>功能同addKeyListener,只是传参方式不同<br>例:<br>el.addKeyMap({key : "ab",ctrl : true,fn: fn,scope:el });<br>和<br>el.addKeyListener({key:"ab",ctrl:true},fn,el);<br>是等价的,都是在 按下ctral+a或ctrl+b后呼叫fn<br><br>addListener( String eventName, Function fn, [Object scope], [Object options] ) : void<br>定义事件侦听,eventName:事件名,fn:事件处理方法,scrope:范围,其中options的定义比较复杂,可以包含以下属性<br>scope {Object} : 处理fn的范围<br>delegate {String} : 一个简单选择器(过滤目标或寻找目标的子孙节点)<br>stopEvent {Boolean} : 阻止事件,等于preventDefault+stopPropagation<br>preventDefault {Boolean} : 阻止默认活动<br>stopPropagation {Boolean} : 阻止事件冒泡<br>normalized {Boolean} :设为flase将允许浏览器事件替代Ext.EventObject<br>delay {Number} : 延时多少毫秒后发生<br>single {Boolean} : 只运行一次<br>buffer {Number} : 在Ext.util.DelayedTask中预定事件<br>当然,还可能自定义参数以传入function<br><br><br>alignTo( Mixed element, String position, [Array offsets], [Boolean/Object animate] ) : Ext.Element<br>将el对齐到element,positon,指示对齐的位置,可选以下定义<br>tl&nbsp;&nbsp;&nbsp;&nbsp; 左上角(默认)<br>t&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 上居中 <br>tr&nbsp;&nbsp;&nbsp;&nbsp; 右上角<br>l&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 左边界的中央<br>c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 居中<br>r&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 右边界的中央<br>bl&nbsp;&nbsp;&nbsp;&nbsp; 左下角<br>b&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 下居中<br>br&nbsp;&nbsp;&nbsp;&nbsp; 右下角<br>position还可以使用?约束移动不能超出窗口<br>offsets 偏移量,以象素为单位<br>animate 详见animate定义<br><br>例:div1.alignTo('div2','c-bl?',[20,0],true);<br>采用默认动画将div1的最中央对齐到div2的左下角,并右移20个象素,且不能超出窗口<br><br><br>anchorTo(
Mixed element, String position, [Array offsets], [Boolean/Object
animate], [Boolean/Number monitorScroll], Function callback ) :
Ext.Element<br>功能和alignTo类似,只是当窗口重定义大小的时候也会引发重对齐事件<br>monitorScroll参数说明是否需要监视滚动条行为,如果定义为数值则是定义的延时,单位为毫秒,默认是50ms,<br>callback定义了animate完成后的回叫方法<br><br>animate( Object args, [Float duration], [Function onComplete], [String easing], [String animType] ) : Ext.Element<br>执行动画.<br>args:目标<br>duration:时间间隔.默认是0.35<br>Function:完成后的回叫方法<br>easing:行为方法 默认值是:easeOut,可选值在ext_base中找到,但没有说明,以下内容从yahoo ui中找到的<br>easeNone:匀速<br>easeIn:开始慢且加速<br>easeOut:开始快且减速<br>easeBoth:开始慢且减速<br>easeInStrong:开始慢且加速,t的四次方<br>easeOutStrong:开始快且减速,t的四次方<br>easeBothStrong:开始慢且减速,t的四次方<br>elasticIn:<br>elasticOut:<br>elasticBoth:<br>backIn:<br>backOut:<br>backBoth:<br>bounceIn:<br>bounceOut:<br>bounceBoth:<br>太多,慢慢体会吧<br>animType:定义动画类型,默认值run 可选值:color/motion/scroll<br><br><br>appendChild( String/HTMLElement/Array/Element/CompositeElement el ) : Ext.Element<br>添加子元素el(el须已存在)<br><br>appendTo( Mixed el ) : Ext.Element<br>将当前元素添加到el<br><br>applyStyles( String/Object/Function styles ) : Ext.Element<br>应用样式,styles是"width:100px"这样的字符串或{width:"100px"}这样的对象,function是指返回这样的字串和对象的函数,这是一个没有用的批示,因为任何传参的地方都可以是返回要求类型的function.另见setStyle<br><br>autoHeight( [Boolean animate], [Float duration], [Function onComplete], [String easing] ) : Ext.Element<br>自适应高度,参数都是老相识了,惟一需要注意的是这个方法使用了setTimeout,高度不会马上变更<br><br>blur() : Ext.Element<br>失去焦点,忽略所有的异常<br><br>boxWrap( [String class] ) : Ext.Element<br>用一个指定样式class的div将当前元素包含起来,class默认值为x-box<br><br>center( [Mixed centerIn] ) : void<br>alignTo的简华版.相当于alignTo(centerIn || document, 'c-c'),当前元素的中心对齐到centerIn元素的中心<br><br>child( String selector, [Boolean returnDom] ) : HTMLElement/Ext.Element<br>依selector选择子孙节点,依returnDom不同批示返回html元素还是ext元素,未定义或false时返回Ext.Element<br><br>clean( [Boolean forceReclean] ) : void<br>清除无用的空白文本节点(我喜欢这个想法)<br><br>clearOpacity() : Ext.Element<br>清除当前元素样式中不通用元素,清除ie中的filter,清除FF中的opacity/-moz-opacity/-khtml-opacity<br><br>clearPositioning( [String value] ) : Ext.Element<br>&nbsp;清除定位,恢复到默认值,相当于<br>&nbsp;this.setStyle({"left": value,"right": value,"top": value,"bottom": value,"z-index": "","position" : "static"});<br><br>clip() : Ext.Element<br>裁剪溢出部分,用unclip()恢复<br><br>contains( HTMLElement/String el ) : Boolean<br>当前元素中是否存在el<br><br>createChild( Object config, [HTMLElement insertBefore], [Boolean returnDom] ) : Ext.Element<br>创建一个新的子节点<br>config :DomHelper元素对象,如果没有特别指明tag,将使用div做默认tag,详情参见DomHelper,如果未定义insertBefore,则追加<br><br>createProxy( String/Object config, [String/HTMLElement renderTo], [Boolean matchBox] ) : Ext.Element<br>创建一个代理元素<br>config:代理元素的类名或DomHelper config对象<br>renderTo:将要绘制代理元素的html element或id<br>matchBox:是否对齐<br><br>createShim() : Ext.Element<br>在当前元素之前创建一个classname为ext-shim的iframe,有什么用?<br><br>down( String selector, [Boolean returnDom] ) : HTMLElement/Ext.Element<br>通过样式选择器selector选择子孙节点<br><br>enableDisplayMode( [String display] ) : Ext.Element<br>setVisibilityMode的简便方法<br><br>findParent( String selector, [Number/Mixed maxDepth], [Boolean returnEl] ) : HTMLElement<br>通过简单选择器selector寻找祖先节点 ,直到maxDepth(元素maxDepth默认为10,也可以是指定的DOM 节点),找不到返回null<br><br>findParentNode( String selector, [Number/Mixed maxDepth], [Boolean returnEl] ) : HTMLElement<br>从父元素开始使用简单选择器selector选择DOM节点<br><br>first( [String selector], [Boolean returnDom] ) : Ext.Element/HTMLElement<br>得到第一个符合selector条件的子节点,跳过文本节点<br><br>focus() : Ext.Element<br>得到焦点<br><br>getAlignToXY( Mixed element, String position, [Array offsets] ) : Array<br>得到当前元素按position规则对齐到element时的XY坐标值 position/offsets参数参见alignTo方法<br><br>getAnchorXY( [String anchor], [Object size], [Boolean local] ) : Array<br>得到当前元素锚点指定的坐标值 anchor定义参见alignTo方法,默认为c<br><br>getAttributeNS( String namespace, String name ) : String<br>得到使用了命名空间namespace的属性name之值,<br><br>getBorderWidth( String side ) : Number<br>得到side指定的边框之和,side可以是t, l, r, b或他们的任意组合,比如getBorderWidth("lr")就是得到左边框和右边框之和<br><br>getBottom( Boolean local ) : Number<br>得到当前元素的底部纵坐标,元素纵坐标+元素高度<br><br>getBox( [Boolean contentBox], [Boolean local] ) : Object<br>得到当前元素的box对象:{x,y,width,height}<br><br>getCenterXY() : Array<br>如果当前元素要居中对齐时的横纵坐标值,等价getAlignToXY(document, 'c-c')<br><br>getColor( String attr, String defaultValue, [String prefix] ) : void<br>得到当前元素指定attr的颜色值,如果没指定,返回defualtValue,比较郁闷的是明明不是void为什么api中批示是一个void?应该是个字符串<br><br>getComputedHeight() : Number<br>得到计算过的高度,得到offsetHeight或css中定义的height值之一,如果使用了padding/borders,也会计算进去<br><br>getComputedWidth() : Number<br>见getComputedHeight<br><br>getFrameWidth( String sides ) : Number<br>得到sides定义的border宽度和padding定义的宽度之和,side定义见getBorderWidth<br><br>getHeight( [Boolean contentHeight] ) : Number<br>返回元素的offsetHeight<br><br>getLeft( Boolean local ) : Number<br>得到横坐标<br><br>getMargins( [String sides] ) : Object/Number<br>如果没有定义sides,则返回一个含有{left,top,width,height}对象,反之返回side指定的宽度,side定义见getBorderWidth<br><br>getOffsetsTo( Mixed element ) : Array<br>计算从element到当前元素的偏移量<br><br>getPadding( String side ) : Number<br>得到由side指定的padding之和<br><br>getPositioning() : Object<br>得到当前元素的位置信息 返回含以下属性的对象{position,left,right,top,bottom,z-index}<br><br>getRegion() : Region<br>得到当前元素的区域信息 返回含有以下属性的Ext.lib.Region对象{top, left, bottom, right}<br><br>getRight( Boolean local ) : Number<br>右边界值<br><br>getScroll() : Object<br>得到一个批示滚动条位置的对象{left, top