設定頁面文字框 只能輸入數位js方法
之前寫過的方法有缺陷,可以輸入空格。現在將空格也屏蔽了。就是在之前的代碼裡加入了過濾空格的功能。
代碼如下:
$("#money").bind("propertychange",function() { </p><p> if(""!=this.value){</p><p> var str = this.value.replace(/(^/s*)|(/s*$)/g, "");<br /> if(this.value != str )<br /> this.value = str;<br /> }</p><p> if( isNaN(Number(this.value)))<br /> this.value = this.value.replace(/[/D]/,'');<br /> });<br />
這裡使用了JQuery綁定到id為money的文字框的onpropertychange事件上。
下面的代碼連小數點也屏蔽掉了
$("#phone").bind("propertychange", function() { </p><p> if(""!=this.value){</p><p> var str = this.value.replace(/(^/s*)|(/s*$)/g, "");<br /> if(this.value != str )<br /> this.value = str;<br /> }</p><p> if (this.value.indexOf('.') != -1) {<br /> this.value = this.value.replace(/[/.]/, '');<br /> this.focus(); } </p><p> if (isNaN(Number(this.value))) {<br /> this.value = ($.trim(this.value)).replace(/[/D]/, '');<br /> this.focus(); } });</p><p>
最後,最好將IME屏蔽掉。 通過css,ime-mode:disabled就可以實現。
如果很嚴格的話,可以再追加上禁止粘貼與拖拽。
實現方法見:http://blog.csdn.net/lingxyd_0/archive/2010/10/09/5929665.aspx