سلام
من یک پلاگین مربوط به ورد پرس دارم که قسمتی از اون با جاوا نوشته شده است و صحت سلامت ایمیل وارد شده را چک میکند من میخوام اون را به صحت سلامت وارد کردن شماره موبایل ایران تغییر بدم که توانستم این اسکریپت را پیدا کردم و درسایتهای انلاین چک جاوا تست کردم جواب داد وبه خوبی کار میکرد
/^[0][1-9]\d{9}$|^[1-9]\d{11}$/g
تابع چک کردن ایمیل مربوط به پلاگین این هست :
var has_error = 0;
/**
* Making sure we have a valid email address
*/
var email = free_downloads_form_element.find('input[name="edd_free_download_email"]');
var regex = /^((([A-Za-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([A-Za-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09 )+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22 )))@((([A-Za-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([A-Za-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([A-Za-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([A-Za-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([A-Za-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([A-Za-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([A-Za-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([A-Za-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/;
if ( email.val() === '' ) {
$( '.edd-free-download-errors' ).show();
$('#edd-free-download-error-email-required').css('display', 'block');
has_error++;
e.preventDefault();
} else {
$('#edd-free-download-error-email-required').css('display', 'none');
if ( ! regex.test( email.val() ) ) {
$( '.edd-free-download-errors' ).show();
$('#edd-free-download-error-email-invalid').css('display', 'block');
has_error++;
e.preventDefault();
} else {
$('#edd-free-download-error-email-invalid').css('display', 'none');
}
}
/**
* End email check
*/
اما بعد از تغییر regex کار نمیکند و از انجایی که جاوا بلد نیستم متوجه نمیشوم چرا کار نمیکنه البته مطمعن هستم که از همین اسکریپت هست زیرا بعد از تغییرکار نمیکند و بعد از بازگرداندن Regex به حالت اولیه مجدد ایمیل را چک میکند
قیل از تغییر :
var regex = /^((([A-Za-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([A-Za-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09 )+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22 )))@((([A-Za-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([A-Za-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([A-Za-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([A-Za-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([A-Za-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([A-Za-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([A-Za-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([A-Za-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/;
بعد از تغییر :
var regex =/^[0][1-9]\d{9}$|^[1-9]\d{11}$/g
دوستان زحمت میکشن و به من بگن مشکل از کجاست که بعد از تغییر این تابع کار نمیکند و اگه امکانش باشه تابع را به حالتی که جواب بده تغییر بدن
با تشکر از همه دوستان عزیز
با احترام