[英]Jquery validation regex
嗨,我現在正在使用表單驗證。 如何制作數字,逗號和小數的正則表達式? 或簡而言之,是文本框中的貨幣值。
例如12,100.10
jQuery(function($) {
var validation_holder;
$("form#register_form input[name='submit']").click(function() {
var validation_holder = 0;
var cost = $("form#register_form input[name='n_unit_cost']").val();
var cost_regex = /^[0-9]+$/; // reg ex cost check
if(cost == "") {
$("span.val_cost").html("This field is required.").addClass('validate');
validation_holder = 1;
} else {
if(!cost_regex.test(cost)){ // if invalid phone
$("span.val_cost").html("Integer Only is Allowed!").addClass('validate');
validation_holder = 1;
} else {
$("span.val_cost").html("");
}
}
if(validation_holder == 1) { // if have a field is blank, return false
$("p.validate_msg").slideDown("fast");
return false;
} validation_holder = 0; // else return true
/* validation end */
}); // click end
}); // jQuery End
就像是:
^\d{1,3}(?:,?\d{3})*\.\d\d$
這將滿足您的正則表達式。
var cost_regex = ^\d+(,\d{3})*(\.\d+)?$
這將匹配帶或不帶逗號,帶或不帶數字的數字。
說明: \\d+
將匹配一個或多個數字。 這將匹配沒有逗號的數字。 然后是(,\\d{3})*
部分,該部分將允許用戶每三個數字使用逗號,但是如果數字中有個愚蠢的逗號(例如1,,,2345
,則將不匹配不匹配!)。 然后對於小數部分, (\\.\\d+)?$
將匹配一個點和任意數量的數字。 ?
使此部分在正則表達式中為可選。
這個工具非常方便編寫和測試正則表達式,我邀請您下次嘗試驗證模式時嘗試一下!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.