X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=Roo%2Fform%2FTextField.js;h=20a8c7dd0f13cc57b3a1c0d6bb5aba87b7fa3c05;hb=16d585588738895fd73db1cc2cf3754144012aab;hp=4af5627108266b6ba167f21ccf78e38a64c174de;hpb=bd7213be3c6d533d9186f39f4cf52396b3cf68e0;p=roojs1 diff --git a/Roo/form/TextField.js b/Roo/form/TextField.js index 4af5627108..20a8c7dd0f 100644 --- a/Roo/form/TextField.js +++ b/Roo/form/TextField.js @@ -83,6 +83,10 @@ Roo.extend(Roo.form.TextField, Roo.form.Field, { * @cfg {Boolean} selectOnFocus True to automatically select any existing field text when the field receives input focus (defaults to false) */ selectOnFocus : false, + /** + * @cfg {Boolean} allowLeadingSpace True to prevent the stripping of leading white space + */ + allowLeadingSpace : false, /** * @cfg {String} blankText Error text to display if the allow blank validation fails (defaults to "This field is required") */ @@ -127,8 +131,11 @@ Roo.extend(Roo.form.TextField, Roo.form.Field, { if(this.selectOnFocus){ this.on("focus", this.preFocus, this); - } + if (!this.allowLeadingSpace) { + this.on('blur', this.cleanLeadingSpace, this); + } + if(this.maskRe || (this.vtype && this.disableKeyFilter !== true && (this.maskRe = Roo.form.VTypes[this.vtype+'Mask']))){ this.el.on("keypress", this.filterKeys, this); } @@ -164,7 +171,11 @@ Roo.extend(Roo.form.TextField, Roo.form.Field, { this.autoSize(); } }, - + // private - clean the leading white space + cleanLeadingSpace : function(e) + { + this.setValue(this.getValue().replace(/^\s+/,'')); + }, /** * Resets the current field value to the originally-loaded value and clears any validation messages. * @@ -172,9 +183,7 @@ Roo.extend(Roo.form.TextField, Roo.form.Field, { reset : function(){ Roo.form.TextField.superclass.reset.call(this); - }, - - + }, // private preFocus : function(){ @@ -312,12 +321,14 @@ Roo.extend(Roo.form.TextField, Roo.form.Field, { return; } - if(isSelectAll){ // backspace and delete key + if(isSelectAll && event.getCharCode() > 31){ // backspace and delete key event.preventDefault(); // this is very hacky as keydown always get's upper case. - // + var cc = String.fromCharCode(event.getCharCode()); + + this.setValue( event.shiftKey ? cc : cc.toLowerCase()); }