2016-09-19 2 views
1

Я хотел бы иметь что-то, что вызывает адрес электронной почты для себя, как только пользователь вводит свой адрес электронной почты в поле ввода. Как только адрес электронной почты будет введен, в поле добавляется дополнительный класс. напримерАвтоматически отправлять электронную почту, когда пользователь вводит адрес электронной почты

Адрес электронной почты не введен:

<input class="simpleinput">

Адрес электронной почты вошли:

<input class="simpleinput emailok">

Не могли бы вы помочь? Большое спасибо

+0

Я не совсем понимаю, о чем вы просите. Вы хотите отправить электронную почту или добавить CSS в поле ввода? –

+0

что вы пробовали? Обновите свой код. – ADarnal

+0

Вы хотите отправить письмо по электронной почте, когда пользователь вводит действительный emailId в текстовое поле? –

ответ

0

Добавить событие onBlur(), а затем проверить регулярное выражение /^[A-Z0-9._%+-][email protected]([A-Z0-9-]+\.)+[A-Z]{2,4}$/i на электронную почту. если он совпадает, то добавьте класс.

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

Jquery раствор

$(function(){ 
 
    $('.simpleinput').on('blur', function(){ 
 
     var valueToTest = $(this).val() 
 
     var testEmail = /^[A-Z0-9._%+-][email protected]([A-Z0-9-]+\.)+[A-Z]{2,4}$/i; 
 
     if (testEmail.test(valueToTest)){ 
 
      alert('ok'); 
 
      $(this).addClass('emailOk'); 
 
     } 
 
    }) 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input class="simpleinput" type="email">
раствор

JS

var ele = document.querySelector('.simpleinput'); 
 
ele.addEventListener('blur', function(){ 
 

 
var valueToTest = this.value 
 
     var testEmail = /^[A-Z0-9._%+-][email protected]([A-Z0-9-]+\.)+[A-Z]{2,4}$/i; 
 
     if (testEmail.test(valueToTest)){ 
 
      alert('ok'); 
 
      this.className += emailok; 
 
     } 
 

 
}) 
 
<input class="simpleinput" type="email">

+0

'Jquery' не упоминается в теге вопроса, поэтому мы не знаем, использует ли это OP или нет. –

+0

@ Редди, вы правы, но это тоже путь. Если другой человек решит его использовать. Я также обновляю редактирование для версии javascript. Спасибо за напоминание, я не заметил, что –

+1

@Reddy добавил решение JS –

0

Насколько я понимаю, вы хотите добавить класс, когда письмо было помещено в поле.

var field = document.getElementsByClassName('simpleinput')[0]; 
field.addEventListener('blur', function(){ 
    if (field.value.length > 0) { 
     field.classList.add('emailok'); 
    } 
}); 

Это добавит событие размытия к цели поля и добавит класс, который вы хотите.

+0

Вместо проверки field.value.length> 0 это было бы лучше использовать регулярное выражение (средство проверки подлинности электронной почты). Что вы говорите? – ADarnal

+0

Это просто пример. –

Смежные вопросы