2013-03-14 60 views
3

即使使用當前驗證插件,如果要使用min驗證,也不能在值中包含逗號。我在github上找到了幾個月前(11個月)提交修補程序以修改源.js文件的補丁,但它仍未發佈。jquery驗證 - 在驗證發生前替換域中的逗號

所以,而不是修改我的源.js文件,我試圖找出如何在驗證之前替換逗號。

我想是這樣的:

$("#amount").blur(function(){ 
    var val = $(this).val().replace(/\,/g,''); 
    $(this).val(val); 
}); 
$("#transferForm").validate({ 
    ....... 
}); 

但它運行驗證第一,失敗的原因分鐘,然後替換值。我不一定希望它失敗驗證並告訴用戶刪除逗號 - 我只是希望它在運行最小規則之前刪除逗號。

回答

5

甚至不要讓他們進入逗號

$("#amount").keyup(function(){ 
    var val = $(this).val().replace(/\,/g,''); 
    $(this).val(val); 
}); 

演示:http://jsfiddle.net/calder12/tdxKv/