2011-02-11 45 views
1

我有一個正則表達式來檢查數字並允許「 - 」(連字符)文本字段。在Ext Js VType中使用正則表達式

var regex = /^\d+-\d{1,2}$/; //Checks "digits-digit(s,1 or 2)" 

這適用於普通的HTML文本字段。但是,如果我想要一個Ext JS的文本字段我必須做下面的代碼

Ext JS的文本字段,並稱爲由Vtype

var <portlet:namespace/>issueNoField = new Ext.form.TextField({ 
    fieldLabel: 'Issue No', 
    width: 120, 
    valueField:'IssNo', 
    vtype: 'hyphen' 
}); 

Ext.apply(Ext.form.VTypes, { 
       hyphenText : "Only numbers and hyphen.", 
       hyphenMask:/[0-9-]/, 
       hyphenRe: /^\d+-\d{1,2}$/, //This is the check 
       hyphen:function(x){return this.hyphenRe.test(x);} //Am i missing a numericHyMask: here ?? 
      });  

     Is hyphenRe: /^\d+-\d{1,2}$/, is correct or 
     is hyphenRe: /^\d+-[\d{1,2}]$/, is correct as I want 1 or 2 digits after '-' 

請幫我改VTypes正常工作,去做一些正則表達式檢查。

回答

1

適合我。驗證本身不起作用(當您鍵入無效內容時,字段不會被加下劃線)或者您是否錯過了錯誤工具提示?在後一種情況下找個地方在你的代碼:

Ext.QuickTips.init(); 

否則提示不會出現。

+0

我編輯了我的腳本,請建議。我在腳本上方使用QuickTips。 – 2011-02-11 09:19:10