Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.05.2010, 16:45   #1
Wicort
Форумчанин
 
Аватар для Wicort
 
Регистрация: 04.08.2009
Сообщений: 684
По умолчанию событие после form.reset()

Доброго времени суток.
Ситуация следующая: на странице есть форма. Мне нужно через JavaScript после события Reset формы вызвать свою функцию.
Пытался просто навесить ее на событие:
form.onreset = formreset;
но данная функция отрабатывает до того, как поля формы сбросились, а мне нужно именно после.

Если кто сталкивался, помогите пожалуйста.
Еслия Вам помог, не поленитесь нажать на весы и оставить отзыв. Это не займет много времени, но даст понять, что я старался не зря =)
Мой ник зарегистрирован, а твой?
Wicort вне форума Ответить с цитированием
Старый 25.05.2010, 16:49   #2
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

как квариант, можете делать так:
Код HTML:
function formreset(){
form.reset();
/*
делаете, что хотите
*/
return false;
}
SkyM@n вне форума Ответить с цитированием
Старый 26.05.2010, 08:29   #3
Wicort
Форумчанин
 
Аватар для Wicort
 
Регистрация: 04.08.2009
Сообщений: 684
По умолчанию

Да, но если при этом ещё formreset повесить на событие onreset, то произойдёт зацикливание. Такой вариант я, к сожалению, уже пробовал
Еслия Вам помог, не поленитесь нажать на весы и оставить отзыв. Это не займет много времени, но даст понять, что я старался не зря =)
Мой ник зарегистрирован, а твой?
Wicort вне форума Ответить с цитированием
Старый 26.05.2010, 12:33   #4
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

Цитата:
Сообщение от Wicort Посмотреть сообщение
Да, но если при этом ещё formreset повесить на событие onreset, то произойдёт зацикливание. Такой вариант я, к сожалению, уже пробовал
А, точно-точно. Тогда можно вот так:
Код HTML:
var p_reset = false;
function formreset(){
if (!p_reset) {
     p_reset = true;
     form.reset();
}
/*
делаете, что хотите
*/
p_reset = false;
return false;
}
Хотя полагаю, есть более изящный вариант.
SkyM@n вне форума Ответить с цитированием
Старый 26.05.2010, 15:14   #5
Wicort
Форумчанин
 
Аватар для Wicort
 
Регистрация: 04.08.2009
Сообщений: 684
По умолчанию

Спасибо. Такой вариант не совсем верно работает ( по крайней мере в моем случае), т.к. во внутреннем вызове form.reset натыкаемся на return false и сброс не происходит.
Немного подкорректировал код и получилось следующее:

Код HTML:
var bReset = false;
function formreset()
{
  if (!bReset)
  {
    bReset = true;
    this.reset();
    // тут всякие разные глупости :)
    return false;
  }
  bReset = false;
}
вроде даже работает
Еслия Вам помог, не поленитесь нажать на весы и оставить отзыв. Это не займет много времени, но даст понять, что я старался не зря =)
Мой ник зарегистрирован, а твой?
Wicort вне форума Ответить с цитированием
Старый 26.05.2010, 16:10   #6
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

Ну вот, главное натолкнуть на мысль)

Цитата:
Сообщение от Wicort Посмотреть сообщение
Спасибо. Такой вариант не совсем верно работает ( по крайней мере в моем случае), т.к. во внутреннем вызове form.reset натыкаемся на return false и сброс не происходит.
по поводу неработающего form.reset(), то дело в том, что обращаться к форме через пространство имен <element>.method_name() нежелательно, лучше юзать через ДОМ (тот же getElementBy...) ну или если внутри пространства объекта, то как Вы и сделали - использовать this.method_name().
SkyM@n вне форума Ответить с цитированием
Старый 26.05.2010, 16:10   #7
Wicort
Форумчанин
 
Аватар для Wicort
 
Регистрация: 04.08.2009
Сообщений: 684
По умолчанию

Да, и за это огромное спасибо)
Без этой мысли то я уже 2 дня мучался
Еслия Вам помог, не поленитесь нажать на весы и оставить отзыв. Это не займет много времени, но даст понять, что я старался не зря =)
Мой ник зарегистрирован, а твой?
Wicort вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Восстановить подключение после socket error 10054 connection reset by peer ZBEP Работа с сетью в Delphi 3 11.06.2013 18:24
Событие после открытия формы VistaSV30 Microsoft Office Access 2 29.01.2010 11:19
Reset bbk_serg Общие вопросы Delphi 5 15.04.2009 17:27
Что за событие у Form? zotox Помощь студентам 4 02.03.2009 15:37
Form.Show в Form.Create UnD)eaD)Snake Общие вопросы Delphi 6 07.09.2007 11:13