2012-04-03 101 views
3

我用輸入掩碼jquery插件來掩蓋信用卡字段。 我的掩蔽代碼如下:jquery驗證和掩碼插件

$(".cardField").mask("9999 9999 9999 9999"); 

的問題是我還用在以下的條件驗證插件:

rules: { 
    cardField: { 
     required: true, 
     digits: true, 
     minlength: 16, 
     maxlength: 16 
    } 
} 

現在,每當我輸入的時候,它總是會導致一個錯誤因爲空間。 我該如何解決這個問題?

另外,在我使用$ post提交之前,我想將它作爲一個沒有空格的數字返回。我使用了unmasked()方法,但它返回一個對象。

var creditCardValue = $(".cardField").unmask().mask("9999 9999 9999 9999"); 
     $(".cardField").val(creditCardValue); 

所以我如何正確地做到這一點?

謝謝。

回答

2

我檢查了插件,我相信你正在使用 - JQuery Mask Plugin。但據我所知,unmask方法只是刪除強制格式,並保留文本框的值。例如 -

日期 - 2012年12月12日 - 與面具
日期 - 2012年12月12日 - 揭露

所以你堅持無需移除額外的格式化自己之後。您可以考慮爲此特定字段添加自定義驗證,然後在服務器上或在將其發佈到服務器之前恢復爲您希望的格式。我認爲這將是現在唯一可用的解決方案。