Strict Standards: Resource ID#32 used as offset, casting to integer (32) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#34 used as offset, casting to integer (34) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#35 used as offset, casting to integer (35) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Версия для печати :: кнопка "reset"?
ТвойWeb » Сайтостроительство » Форумы » кнопка "reset"?

Страниц (1): [1]
 

1. iris - 12 Сентября, 2006 - 06:27:16 - перейти к сообщению
Народ, помогите чайнику pliz.....
Кнопка "добавить"<input name="submit" type="image" id="submit" src="(путь)/dobav.gif">
работает правильно.
Кнопка "очистить" <input name="reset" type="image" id="reset" src="(путь)/ochist.gif">
работает как "добавить", не очищает поля....
Как нарисовать кнопку "reset"?
Не понял
2. Дмитрий Б. - 12 Сентября, 2006 - 08:36:09 - перейти к сообщению
iris
Ты не так понял: параметр name для кнопки никакой полезной информации в себе не несёт - ну разве что для JavaScript'а. За назначение кнопки отвечает параметр type (image - рисунок, выполняющий отправку; submit - кнопка отправки; reset - кнопка сброса, button - просто кнопка). HTML не позволяет создать графическую кнопку сброса, однако это легко делается с помощью javascriptа:
CODE:
<...>
<form name="myForm" action="..." method="...">
<...>
<img src="путь" onclick="document.myForm.reset();">
<...>
обрати внимание на параметр name у формы - в этом случае его опускать нельзя.
3. iris - 13 Сентября, 2006 - 03:40:52 - перейти к сообщению
Дмитрий Б.
Спасибо. Все получилось. Полный код:
<input type="image" src="путь" onclick="this.form.reset();return false">
Без вот этого:... ;return false... поля не очищаются.
4. Дмитрий Б. - 13 Сентября, 2006 - 08:13:49 - перейти к сообщению
iris пишет:
Полный код:
<input type="image" src="путь" onclick="this.form.reset();return false">
ИМХО, не есть гут. Ты определяешь кнопку-картинку, которая по логике браузера должна отправлять данные формы на сервер, и затем, применяя искусственный приём, изменяешь её поведение. Тот самый return false - это отмена отправки формы на сервер. С одной стороны - почему бы и нет, а с другой - представь, что у юзера отключен js, тогда эта кнопка вместо очистки формы инициирует отправку. Мой вариант не сделает ничего... Впрочем, это уже дело вкуса.
5. iris - 13 Сентября, 2006 - 11:07:37 - перейти к сообщению
... со стыдом сознаюсь, твоим способом у меня не заработало,
т.е. продолжало отправлять данные формы на сервер...
Если не в лом, объясни pliz чайнику, что такое "у юзера отключен js"...
только попроще....
6. Дмитрий Б. - 13 Сентября, 2006 - 21:56:28 - перейти к сообщению
Ну, не заработать это могло только в одном случае: если ты вместо тега <img> продолжал использовать <input type="image"> - эти две вещи смешивать не надо!

Насчёт js: есть такой язык сценариев - JavaScript. Он выполняется в твоём браузере. Если ты увидишь на странице (не Flash) разворачивающиеся меню, летающие буквы, высекающий искры указатель мыши или просто окно с надписью "Вы не ввели контрольные цифры!" при попытке войти в админку на Народе - это работает JavaScript. this.form.reset(); на этом языке значит следующее: очистить поля той формы, в которой описан этот input (onclick - по щелчку на изображении). return false; - отменить стандартное поведение для этого элемента (в твоём случае - отправку на сервер). Но от этого языка могут быть и неприятности в виде, например, открывающихся новых окон с рекламой, зависания браузера (если в сценарии встретился, например, бесконечный цикл) или невозможности скопировать содержимое страницы. В этом случае выход очевиден: надо запретить выполнение сценариев на этой странице. js - это аббревиатура от JavaScript. Соответственно, при отключенный сценариях твоя кнопка останется просто кнопкой отправки (сценарий отключен - отправку остановить некому).

Насчёт сценария: вот пример, который точно работает (хотя первый вроде тоже должон, но мож я где опечатался).
CODE:
<html>
<body>
<form name="myForm">
<input type="text" value="default">
<BR>
<input type="checkbox" checked>
<BR>
<input type="reset" id="myReset">
</form>
<BR>
<img src="word.jpg" onclick="document.myForm.reset();">
</body>
</html>
7. iris - 16 Сентября, 2006 - 06:21:48 - перейти к сообщению
Дмитрий Б.
Большое спасибо. Теперь все понятно. Кнопка заработала.
Моя ошибка была, что в гостевой уже было: <form name=...>
а я еще раз вставляла из твоего примера...
Радость
Чайник, он и есть чайник...
Спасибо за подробный ответ.

8. DmitryDD - 22 Июля, 2011 - 16:10:23 - перейти к сообщению
Полезная информация

Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0317]     [ Gzipped ]