在網上搜索了不少代碼,發現通常都是使用replace或者是window.event.returnValue,不知道是個人使用方法不對,仍是代碼什麼地方寫錯了,總感受不怎麼好用,後面發現numberbox自帶的filter在禁止輸入的時候很是好用.
ui
請看代碼:this
功能:在顯示的時候只能是兩位小數,在輸入的時候若是已經有兩位小數,那麼禁止輸入
code
JSP代碼: <input name="object.fixRate" class="easyui-numberbox _fixRate" onkeyup="setFixRate(this,event)" data-options="required: true,precision:2" style="width:30px;text-align: right;"/> JS代碼: function setFixRate(tt,event){ // var value = $('._fixRate').numberbox('getValue');//不能使用numberbox的getValue,這個是隱藏框的值 //若是有小數點 var value = $('._fixRate').val();//這個纔是輸入框的值 if(value.indexOf(".") >= 0){//若是包含小數點 if((value.substring(value.indexOf(".")+1).length) >=2){//若是小數位數已經有兩位 // window.event.returnValue = false; // $('._fixRate').val(value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')); // $('._fixRate').numberbox('filter',false); $('._fixRate').numberbox('options').filter = function(){ //讓filter返回false會禁止按鍵輸入 return false; }; }else{ //記得寫else,不然該nunberbox將不容許再次輸入了 $('._fixRate').numberbox('options').filter = function(){ return true; } } }