<MyRusakov.ru />

Создание крупного проекта на Java с нуля

Создание крупного проекта на Java с нуля

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

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

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

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

Почему не подсвечивает поле в форме?
24.08.2012 13:25:13 Почему не подсвечивает поле в форме? Сообщение #1
bo4kov

bo4kov

Продвинутый

Продвинутый

Дата регистрации:
11.06.2012 11:21:31

Сообщений: 65

Почему не подсвечивает поле в форме?

Например есть такое поле:
<input type="text" id="name" name="name" class="someClass">


И есть js:

$("#name".change(function(){
name = $("#name".val();
var expName = /^[а-яёЁіІ \-]{2,30}$/gi;
var resName = name.search(expName);
if(resName == -1){

$("#name".next().hide().text("".css("color","red".fadeIn(400);
$("#name".removeClass().addClass("inputRed";
$("#login_result".fadeTo(200,0.1,function(){
$(this).html('У нас принято использовать настоящее имя, фамилию и отчество!').removeClass().addClass('error').fadeTo(900,1);
});

nameStat = 0;
buttonOnAndOff();

}else{
$("#name".removeClass().addClass("inputGreen";
$("#name".next().text("";
$("#login_result".removeClass('error').fadeOut(1);
nameStat = 1;
buttonOnAndOff();
}
});
$("#name".keyup(function(){
$("#name".removeClass();
$("#name".next().text("";
});
$('#name').each(function() {
$('#name').val('');
});



Когда в поле вводишь например цифры то оно подсвечивается красным, а если вводиш имя русскими буквами - то подсвечивается зелюным. Это все прекрасно работает, НО когда пользователь ввел имя русскими буквами, поле подсветилось зеленым, и пользователь захотел изменить уже правильный вариант на правильный новый вариант(например было Иван, а изменил на Олег), то поле уже зеленным не подсвечивается. Так вот, как сделать чтобы поле подсвечивалось?
Профиль Ответить
24.08.2012 23:16:35 Почему не подсвечивает поле в форме? Сообщение #2
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Попробуйте функцию проверки вызывать через равные интервалы времени, а не по изменению текстового поля.
Профиль Ответить
26.08.2012 11:03:32 Почему не подсвечивает поле в форме? Сообщение #3
bo4kov

bo4kov

Продвинутый

Продвинутый

Дата регистрации:
11.06.2012 11:21:31

Сообщений: 65

Можете написать пример?
Профиль Ответить
26.08.2012 11:49:40 Почему не подсвечивает поле в форме? Сообщение #4
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Имеется в виду вот так вызывать некую функцию check(), которая будет периодически проверять, что ввел пользователь.
setInterval(function(){check()}, 3000);
Профиль Ответить
27.08.2012 13:58:32 Почему не подсвечивает поле в форме? Сообщение #5
bo4kov

bo4kov

Продвинутый

Продвинутый

Дата регистрации:
11.06.2012 11:21:31

Сообщений: 65

Почемуто не работает. Я правильно прописываю?

$("#name".setInterval(function(){check()}, 3000);


Если не правильно, то исправте пожалуйста.
Профиль Ответить
27.08.2012 19:16:45 Почему не подсвечивает поле в форме? Сообщение #6
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Нет, должно быть именно так, как я написал. Только вместо функции check() подставляете свой обработчик. Он и будет вызываться с заданным интервалом.
Профиль Ответить
28.08.2012 13:52:33 Почему не подсвечивает поле в форме? Сообщение #7
bo4kov

bo4kov

Продвинутый

Продвинутый

Дата регистрации:
11.06.2012 11:21:31

Сообщений: 65

Почемуто не работает

Вот мой код:

$(function () {

function povtor() {

$("#name".change(function(){
name = $("#name".val();
var expName = /^[а-яёЁіІ \-]{2,30}$/gi;
var resName = name.search(expName);
if(resName == -1){

$("#name".next().hide().text("".css("color","red".fadeIn(400);
$("#name".removeClass().addClass("inputRed";
$("#login_result".fadeTo(200,0.1,function(){
$(this).html('У нас принято использовать настоящее имя, фамилию и отчество!').removeClass().addClass('error').fadeTo(900,1);
});

nameStat = 0;
buttonOnAndOff();

}else{
$("#name".removeClass().addClass("inputGreen";
$("#name".next().text("";
$("#login_result".removeClass('error').fadeOut(1);
nameStat = 1;
buttonOnAndOff();
}
});
$("#name".keyup(function(){
$("#name".removeClass();
$("#name".next().text("";
});
$('#name').each(function() {
$('#name').val('');
});
}
setInterval(function(){povtor()}, 1000);
});


Что я делаю не так?
Профиль Ответить
31.08.2012 18:25:40 Почему не подсвечивает поле в форме? Сообщение #8
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Интервал теперь правильно задали. Значит Ваша функция проверки не выполняется. Можете проверить алертом, вызывается ли она каждую секунду.
Профиль Ответить
31.08.2012 22:00:55 Почему не подсвечивает поле в форме? Сообщение #9
bo4kov

bo4kov

Продвинутый

Продвинутый

Дата регистрации:
11.06.2012 11:21:31

Сообщений: 65

Я проверил алертом все работает? alert высвечивается каждую секунду, а как мне сделать чтобы поле подсвечивалось? Где моя ошибка?
Профиль Ответить
01.09.2012 12:05:22 Почему не подсвечивает поле в форме? Сообщение #10
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Если Вы делаете через интервал, то Ваш обработчик переделать придется. $(element).change уже не нужны. Ещё не обязательно вообще весь функционал вызывать через таймер, а только ту часть, которая у Вас не хотела обновляться.
Профиль Ответить