form validation using ajax with regex
现在我使用Ajax从按键的输入字段中获取值,并将其与MySQL中的数据进行匹配,如果数据是唯一的,那么它将使边框变绿,并标记为红色边框和十字线。现在我想添加regex来验证输入并限制它。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | function username_check() { var username = $('#warden_id').val(); if (username =="" || username.length < 4) { $('#warden_id').css('border', '1px #CCC solid'); $('#tick').hide(); } else { jQuery.ajax({ type:"POST", url:"check.php", data: 'username=' + username, cache: false, success: function (response) { if (response == 1) { $('#warden_id').css('border', '1px #C33 solid'); $('#tick').hide(); $('#cross').fadeIn(); } else { $('#warden_id').css('border', '1px #090 solid'); $('#cross').hide(); $('#tick').fadeIn(); } } }); } |
我要用来验证数据的regex
1 | /^[a-zA-Z\s]+$/ |
号
仅供参考,您不应该在客户端验证用户代码。始终将来自客户的输入视为邪恶
我更改了regex,以便包含用户名的最小长度(
1 2 3 4 5 6 7 8 9 10 11 12 13 | function username_check() { var username = $('#warden_id').val(); // if / else has been turned if (username.match(/^[a-zA-Z\s]{4,}$/)) { ... } else { $('#warden_id').css('border', '1px #CCC solid'); $('#tick').hide(); } ... ... |