Sep 28
GWT-Ext and jQuery input mask plugin
Yesterday, while dabbling with jQuery and getting amazed by the wealth of plugins and effects available for this library, I came across http://digitalbush.com/2008/07/31/masked-input-plugin-114/. It allows you to fit text fields with an input mask to allow only fixed-width input in a certain format. I had seen it first in MS Access a long long time ago.
To use it with GWT-Ext, include jquery.js and jquery.maskedinput.js in your host HTML file. Use <script></script> and not <script/> to avoid wasting time later.
<script language = "javascript" type="text/javascript" src="js/jquery.js" ></script> <script language = "javascript" type="text/javascript" src="js/jquery.maskedinput.js" ></script>
Now write some native code to call the plugin’s methods:
private native void addPlaceholder(String placeholder, String maskString) /*-{ $wnd.$.mask.addPlaceholder(placeholder, maskString); }-*/; private native void mask(String id, String maskString, String placeholderString) /*-{ if(placeholderString != null) $wnd.$('#' + id).mask(maskString, {placeholder:placeholderString}); else $wnd.$('#' + id).mask(maskString); }-*/;
Add the mask to a text field:
addPlaceholder("~", "[+-]"); textField.doOnRender(new Function(){ public void execute() { mask(textField.getId(), "Rs. ~9999.99/-", " "); } });
This will only allow values of the type “Rs. +2345.50/-” with “Rs. ” and “/-” already filled in for the user.
Update: See this: http://gwt-ext.com/forum/viewtopic.php?f=9&t=2984. Thanks mdeg and vanderbill!
