Подсказка проверки jQuery

  • Автор темы itparanoia
  • 43
  • Обновлено
  • 15, May 2024
  • #1
Когда мой текстовый ввод подтверждается как адрес электронной почты, я хочу, чтобы отображалась всплывающая подсказка. Код jQuery ниже не работает. Кто-нибудь может мне с этим помочь? Вот код:

itparanoia


Рег
01 Jan, 2011

Тем
1

Постов
1

Баллов
11
  • 18, May 2024
  • #2
Это работает, но содержание смещается вниз.

Есть ли способ сделать так, чтобы контент не смещался вниз?

$('input[type=email]').blur(function() {

if (!validateEmail($(this).val())) {

$(this).removeClass("размытие").addClass("фокус");

var txt = "Пожалуйста, введите действительный адрес электронной почты.";

var newDiv = $('

').text(txt);

$('#tooltip-1').append(newDiv);

} еще {

$(this).removeClass("фокус").addClass("размытие");

}

})

функция validateEmail(адрес электронной почты) {

var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;

if (emailReg.test(emailaddress) == false) {

вернуть ложь;

} еще {

вернуть истину;

}

}
 

cent345


Рег
24 Jan, 2014

Тем
0

Постов
2

Баллов
2
  • 20, May 2024
  • #3
Хм, вы используете для этого подсказку пользовательского интерфейса jQuery? Если да, то то, что вы делаете, никогда не сработает.

Просто потому, что вы пытаетесь использовать его не по назначению.

Во-первых, всплывающая подсказка отображается только тогда, когда пользователь наводит курсор на контент — что пользователь, вероятно, и сделает, во что бы то ни стало, но показывать ошибки таким образом нецелесообразно.

Во-вторых, функциональность всплывающей подсказки в пользовательском интерфейсе jQuery основывает свое содержимое на атрибуте «title» контента — если у вас нет атрибута title, ему нечего будет показывать.

Кроме того, вы не можете назначить html-контент, как вы это сделали в примере, поскольку это не будет работать.

Чтобы использовать HTML-контент (для чего нет реальной причины, вы можете стилизовать то, что показано, используя CSS-класс), вам придется назначить функцию для возврата HTML-контента.

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

VasylKhomiak


Рег
01 Jan, 2011

Тем
0

Постов
3

Баллов
3
  • 20, May 2024
  • #4
Для всплывающей подсказки я добавил: $("#tooltip-1").tooltip({ содержимое: " Введите действительный адрес электронной почты. "}); но это не сработало.
 

vipok


Рег
07 Apr, 2013

Тем
0

Постов
3

Баллов
3
  • 03, Jun 2024
  • #5
Попробуй это:
 

$('input[type=email]').blur(function() {

if (!validateEmail($(this).val())) {

//do your tooltip stuff

}

})

function validateEmail(emailaddress) {

var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;

if (emailReg.test(emailaddress) == false) {

return false;

} else {

return true;

}

}

Код (разметка):
  <input type="email" class="" name="email"> 
Код (разметка):
 

Glavdir


Рег
08 Jun, 2014

Тем
1

Постов
2

Баллов
12
Тем
49554
Комментарии
57426
Опыт
552966

Интересно