удалить регистр из идентификатора элемента перед добавлением правила?

0

Моя регистрационная форма проверяет правильные адреса электронной почты, а затем пытается сопоставить отправленный домен электронной почты со списком утвержденных доменных доменов. Он работает, однако правило совпадения возвращает ошибку, если отправленный домен электронной почты содержит заглавную букву.

Я попытался добавить ".tolowercase()" к id элемента (#s_email), но я не могу заставить его преобразовать в нижний регистр, прежде чем он применится к правилу. Должен ли я запускать правило против отфильтрованной переменной?

<script type="text/javascript">
$.validator.addMethod('matches', function(value, element, param) {
    return this.optional(element) || value.match(param);
    },'<?php _e('Please enter a valid email address.', 'reg_domain_check'); ?>');
$(document).ready(function() {
    $('#s_email').rules("add", {matches: '<?php echo rdc_js_domain_list(); ?>', messages: {matches: '<?php _e('Sorry, your email address has not yet been approved for registration.', 'reg_domain_check'); ?>'}});
});
</script>

Я просмотрел все и не могу найти решение для правила ID элемента, как указано выше.

Теги:
validation

1 ответ

0
Лучший ответ

Используйте .toLowerCase(), где вы соответствуете значению. Как вы говорите, оно соответствует правильному, если значение находится в нижнем регистре, поэтому почему бы не преобразовать его в lowecase и чем соответствовать ему.

изменение

value.match(param);

в

value.toLowerCase().match(param);

Теперь ваш код становится

<script type="text/javascript">
$.validator.addMethod('matches', function(value, element, param) {
    return this.optional(element) || value.toLowerCase().match(param);
    },'<?php _e('Please enter a valid email address.', 'reg_domain_check'); ?>');
$(document).ready(function() {
    $('#s_email').rules("add", {matches: '<?php echo rdc_js_domain_list(); ?>', messages: {matches: '<?php _e('Sorry, your email address has not yet been approved for registration.', 'reg_domain_check'); ?>'}});
});
</script
  • 0
    Спасибо, Тушар. Я пытался добавить идентификатор элемента. Я, вероятно, попробовал это один или два раза как "tolowercase".

Ещё вопросы

Сообщество Overcoder
Наверх
Меню