easyui的numberbox的比較兩個輸入引數時出現的問題
阿新 • • 發佈:2018-11-24
今天早上和往常一樣坐著自己的豪華大巴來到公司,剛開啟電腦就被別人說自己寫的程式有bug,於是我半信半疑的去看了,bug如下:
前臺頁面
本來寫了一個商品價格和優惠價格的邏輯判斷,但是在測試時卻沒有生效,
頁面程式碼如下:
頁面的JS判斷程式碼:
function onChange(newValue,oldValue) { var price=$("#originalPrice").val(); if(price<newValue){ alert("優惠價格必須小於商品價格"); $("#discountPrice").numberbox('clear'); } }
我輸入的商品價格是456,優惠價格是4556,debug除錯發現判斷後直接跳過if判斷,沒有執行裡面的程式碼,原來easyUI的numberbox的框裡面雖然放的是數字,但並不是真正意義上的數字,而是字串,比較時比較的是字串的長度,需要將字串轉換一下,修改後的程式碼如下:
function onChange(newValue,oldValue) { var price=$("#originalPrice").val(); if(parseFloat(price)<parseFloat(newValue)){ alert("優惠價格必須小於商品價格"); $("#discountPrice").numberbox('clear'); } }
這是一個坑,切記,切記,切記!!!!!!!!!!!!!!!!!!!!!!!!!!!