本文地址:[http://blog.csdn.net/sushengmiyan/article/details/39395753](http://blog.csdn.net/sushengmiyan/article/details/39395753)
官方例子:[?http://docs.sencha.com/extjs/5.0/apidocs/#!/api/Ext.form.Labelable-cfg-beforeLabelTpl](http://docs.sencha.com/extjs/5.0/apidocs/#!/api/Ext.form.Labelable-cfg-beforeLabelTpl)[](http://docs.sencha.com/extjs/5.0/apidocs/#!/api/Ext-method-each)
本文作者:[sushengmiyan](http://blog.csdn.net/sushengmiyan)
------------------------------------------------------------------------------------------------------------------------------------
在注冊頁面獲取填寫信息的界面,我們都能看到必填選項的標志*?這個東西。在Ext中,我們可以通過fieldLabel來創建一個標簽,但是沒有選項明確指出有必填選項的配置,剛才看了下官方的examples/kitchensink/#form-contact例子,發現有個beforeLabelTpl配置可以用來設置必填選項的*標志。
看一下效果先:

在標簽的左邊就增加了*必填標志。
實現方法:
~~~
items:[{
xtype: 'textfield',
name: 'username',
labelWidth: 50,
fieldLabel: '用戶名',
beforeLabelTextTpl: [
'<span style="color:red;font-weight:bold" data-qtip="必填選項">*</span>'
],
//allowBlank: false,
emptyText: '用戶名或郵箱地址'
},{
xtype: 'textfield',
name: 'password',
labelWidth: 50,
inputType: 'password',
fieldLabel: '密 碼',
beforeLabelTextTpl: [
'<span style="color:red;font-weight:bold" data-qtip="必填選項">*</span>'
],
//allowBlank: false,
emptyText: '請輸入您的密碼'
}]
~~~
通過設置beforeLabelTextTpl配置,我們可以避免了每一次都在標簽前面自己寫個星號,再寫標簽名稱那樣粗魯的方法了,可以這樣自定義方式實現選項的標簽配置。
2.labelAlign標簽對齊方式
還有,標簽的顯示,我想把‘用戶名’和‘密碼’這兩個對其,就是想在密碼中間加個空格,但是我嘗試之后發現不可行,不知道是不是ext的bug還是故意這么做的。后來發現可以設置label的對齊方式,設置為右對齊,那么密碼的碼字就和用戶名的名字對齊了。但是前面字體還是不對齊,相比之下,又好看了一點啊。
~~~
fieldDefaults: {
labelAlign: 'right',
labelWidth: 115,
msgTarget: 'side'
},
~~~

3.錯誤提示信息msgTarget:
一共可以設置qtip、title、under、side、none五種樣式,我喜歡under的就是在下面出現錯誤信息的,需要定制客戶化的信息使用的是blankText。
~~~
msgTarget: 'under'
~~~
~~~
blankText:"用戶名不允許為空"
~~~
顯示效果:

關于其他方式,可以自己試下效果,看名字也可以猜到效果的,看起來還不錯呢。
- 前言
- [EXtJS5學習筆記]第一節 Sencha Cmd 學習筆記 簡介 Sencha Cmd是什么
- [ExtJS5學習筆記]第二節 Sencha Cmd 學習筆記 使你的sencha cmd跑起來
- [ExtJS5學習筆記]第三節 sencha cmd學習筆記 生成應用程序構建的內部細節
- [ExtJS5學習筆記]第四節 歡迎來到extjs5-手把手教你實現你的第一個應用
- [ExtJS5學習筆記]第五節 使用fontawesome給你的extjs5應用增加字體圖標
- [ExtJS5學習筆記]第六節 Extjs的類系統Class System命名規則及定義和調試
- [ExtJS5學習筆記]第七節 Extjs5的組件components及其模板事件方法學習
- [ExtJS5學習筆記]第八節 Extjs5的Ext.toolbar.Toolbar工具條組件及其應用
- [ExtJS5學習筆記]第九節 Extjs5的mvc與mvvm框架結構簡介
- [ExtJS5學習筆記]第十節 Extjs5新增特性之ViewModel和DataBinding
- [ExtJS5學習筆記]第十一節 Extjs5MVVM模式下系統登錄實例
- [ExtJS5學習筆記]第十二節 Extjs5開發遇到的問題列表記錄
- [ExtJS5學習筆記]第十三節 Extjs5的Ext.each方法學習
- [ExtJS5學習筆記]第十四節 Extjs5中data數據源store和datapanel學習
- [ExtJS5學習筆記]第十五節 Extjs5表格顯示不友好?panel的frame屬性在作怪
- [ExtJS5學習筆記]第十六節 Extjs5使用panel新增的ViewModel屬性綁定數據
- [ExtJS5學習筆記]第十七節 Extjs5的panel組件增加accodion成為折疊導航欄
- [ExtJS5學習筆記]第十八節 Extjs5的panel的dockeditems屬性配置toolbar
- [ExtJS5學習筆記]第十九節 Extjs5中通過設置form.Panel的FieldSet集合屬性控制多個field集合
- [ExtJS5學習筆記]第二十節 Extjs5配合數組的push方法,動態創建并加載組件
- [ExtJS5學習筆記]第二十一節 Extjs5中使用config配置給ext.widget或者create方法傳遞參數
- [ExtJS5學習筆記]第二十二節 Extjs5中使用beforeLabelTpl配置給標簽增加必填選項星號標志
- [ExtJS5學習筆記]第二十三節 Extjs5中表格gridpanel的列格式設置
- [ExtJS5學習筆記]第二十四節 Extjs5中表格gridpanel或者表單數據后臺傳輸remoteFilter設置
- [ExtJS5學習筆記]第二十五節 利用window.open()函數實現ExtJS5的登陸頁面跳轉
- [EXTJS5學習筆記]第二十六節 在eclipse/myeclipse中使用sencha extjs的插件
- [ExtJS5學習筆記]第二十七節 CMD打包錯誤 Error C2009: YUI Parse Error (identifier is a reserved word =&gt; debugger;)
- [ExtJS5學習筆記]第二十八節 sencha ext js 5.1.0發布版本正式發布 extjs doc下載地址
- [ExtJS5學習筆記]第二十九節 sencha ext js 5.1.0中動態更換皮膚主題
- [ExtJS5學習筆記]第三十節 sencha extjs 5表格gridpanel分組匯總
- [ExtJS5學習筆記]第三十一節 sencha extjs 5使用cmd生成的工程部署到tomcat服務器
- [ExtJS5學習筆記]第三十二節 sencha extjs 5與struts2的ajax交互配置
- [ExtJS5學習筆記]第三十五節 sencha extjs 5 組件查詢方法總結