Forum Webscript.Ru

Программирование => JavaScript & JScript => Тема начата: Forza от 03 Сентября 2004, 15:26:54

Название: предотвратить двойное нажатие на <input type="image">
Отправлено: Forza от 03 Сентября 2004, 15:26:54
Есть форма, которая сабмитится по . Проблема в том, что после первого нажатия на рисунок, пока страница не перерисовалась, есть возможность нажать на него ещё раз. Таким образом пойдёт несколько одинаковых запросов к серверу, а этого бы очень не хотелось.
Как посоветуете предотвратить более чем однократное нажатие на ?

Пока пытаюсь вставить в конец функции someFunction() изменение параметра onclick объекта submitImage.
Но, во-первых, почему-то в NN вообще не обратиться к формы (см. http://devedge.netscape.com/library/manuals/2000/javascript/1.3/reference/form.html#1193375 ), а в IE нельзя обратиться прямо по имени, а можно только так:
for (i=0; iif (document.formName.all[i].name==\'submitImage\') {
// do something
}}

Во-вторых, присвоение в том условии document.formName.all.onclick = \'return false\' ничего в итоге не даёт (хотя дальнейший alert(...) показывает, что оно состоялось), т.е. форма сабмится напрямую сама, как будто onclick нет вообще.

Пытался завести , который бы проверялся на "No" в начале функции (если не "No", то "return false") и изменялся на "Yes" перед сабмитом, но тоже пока почему-то не срабатывает.

Всё это выглядет уже слишком заумно, может быть, есть какие-либо более тривиальные методы?
Название: предотвратить двойное нажатие на <input type="image">
Отправлено: tserbis от 03 Сентября 2004, 15:38:32
document.qqq.all.disabled = true;
Название: предотвратить двойное нажатие на <input type="image">
Отправлено: tserbis от 03 Сентября 2004, 15:41:17
не поможет?, в смысле...
Название: предотвратить двойное нажатие на <input type="image">
Отправлено: Forza от 03 Сентября 2004, 15:54:42
Цитировать
tserbis:
не поможет?,


Помогло. Спасибо.
Есть традиционный вопрос про поддержку этого в отличных от ИЕ броузерах. А также, ну неужели нельзя обратиться по имени к ?
Название: предотвратить двойное нажатие на <input type="image">
Отправлено: alm от 13 Сентября 2004, 11:42:25
А попробуй так

document.formName.elements[\'\'submitImage\'\']