2017-03-07 91 views
5

嘿,我有一個代碼,允許我幾個事情,如只有數字退格 如何更改正則表達式,它將允許按「輸入」,並只允許1個逗號逗號最多2個數字?只允許1個逗號和2個小數點後

$("[name=price]").keydown(function(e){ 
    if(e.keyCode == 110 || e.keyCode == 190) 
    { 
     e.preventDefault(); 
     $(this).val($(this).val() + ','); 
    } 
    if (/\d|,+|[b]+|-+/i.test(e.key)){ 

     }else{return false } 
}) 
+0

什麼具有u試過這麼遠? – namzaG

回答

3

這裏有點詳細的版本。這將接受箭頭鍵,選項卡,輸入,修飾等

$("[name=price]").keydown(function(e) { 
 
    if (e.keyCode == 110 || e.keyCode == 190 || e.keyCode == 188) { 
 
    if ($(this).val().indexOf(',') > -1) { 
 
     return false; 
 
    } else { 
 

 
     e.preventDefault(); 
 
     $(this).val($(this).val() + ','); 
 
    } 
 
    } 
 
    else if (e.keyCode < 47) { 
 
    
 
    } 
 
    else if (/\d|,+|-+/i.test(e.key)) { 
 
    if ($(this).val().indexOf(',') > -1) { 
 
     if ($(this).val().substr($(this).val().indexOf(',') + 1).length >= 2) { 
 
     return false; 
 
     } 
 
    } 
 

 
    } else { 
 
    return false 
 
    } 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input name="price" /> 
 
<input name="price" /> 
 
<input name="price" />

+0

如果我使用這個我不能填寫更多的數字 –

+0

你檢查小提琴嗎?它適用於我的瀏覽器.. – Sami

+0

哎呀,我忘了說,我有更多的輸入文件具有相同的名稱,現在它將對所有的人都有效果(對不起) –

相關問題