Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Объект hidden, Для чего же нужен скрытый объект hidden 
:(
    Опции темы
GIK
Дата 19.9.2005, 16:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Добрый человек
**


Профиль
Группа: Участник
Сообщений: 985
Регистрация: 3.6.2005
Где: я только не небыв ал

Репутация: 6
Всего: 14



Привет всем.
Подскажите кто нибуть для чего нужен "скрытый" объект smile
И еще пару вопросов касаемо ЭТОГО скрипта:
Во первых, нормально ли то, что в функции postData, полю document.form1.holder2.value сначало присваивается значение равное пустой строке document.form1.holder.value, а уж потом этой строке присваевается значение value-document.form1.holder.value=value
И второй вопрос, почему в функции resetValue используется такая конструкция document.form1.ctyList[i].value , а не имя формы и эллемент, например так: document.form1.element[i].value
Код

<html>
<title>Обьект Hidden</title>
<head>
<script type="text/javascript" language="javascript"> 

 function postData(value)
  {   
      document.form1.holder2.value=document.form1.holder.value;
      document.form1.holder.value=value;
  
  }

 function resetValue ()
 {
   var len = document.ctyList.lenght;
   for (var i=0; i<len; i++)
   { if (document.form1.ctyList[i].value = document.form1.holder2.value)
        { document.form1.ctyList[i].checked = true;
          break;                           
        }                  
    }                            
 }

</script>
</head>
<body>
<form name="form1" method="POST" action="doSomething.jsp">
<p><input type=radio name="ctyList" value="Аргентина"
          onClick="postData(this.value)">Аргентина</p>
<p><input type=radio name="ctyList" value="Австралия"
          onClick="postData(this.value)">Австралия</p>
<p><input type=radio name="ctyList" value=Мексика
          onClick="postData(this.value)">Мексика</p>
<p><input type=submit value="Отправить"></p>
          
<p><input type="button" value="Отменить последний выбор" name="UndoLast"
          onClick="resetValue()"></p>
   <input type="hidden" name="holder" value="">
   <input type="hidden" name="holder2" value=""> 
</form>   
</body>
</html>



--------------------
Математика=>пиво=> програмирование, три вещи последовательны и совместимы !!!
Программирование - это не деятельнось! Программирование - это состояние души!
Бог - самый крутой программист.
PM MAIL ICQ   Вверх
sergejzr
Дата 19.9.2005, 16:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Un salsero
Group Icon


Профиль
Группа: Админ
Сообщений: 13285
Регистрация: 10.2.2004
Где: Германия г .Ганновер

Репутация: 10
Всего: 360



Цитата(GIK @ 19.9.2005, 15:19)
Подскажите кто нибуть для чего нужен "скрытый" объект

Что бы передавать значения на сервер.
Цитата(GIK @ 19.9.2005, 15:19)
Во первых, нормально ли то, что в функции postData, полю document.form1.holder2.value сначало присваивается значение равное пустой строке document.form1.holder.value, а уж потом этой строке присваевается значение value-document.form1.holder.value=value

А если document.form1.holder2.value не пустая? т.е на кнопку нажали несколько раз.
Цитата(GIK @ 19.9.2005, 15:19)
И второй вопрос, почему в функции resetValue используется такая конструкция document.form1.ctyList[i].value , а не имя формы и эллемент, например так: document.form1.element[i].value

По идее по стандарту надо вообще использовать document.getElementById();
Вообще задачу в большинстве случаев можно решить разными способами smile


--------------------
PM WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
Sardar
Дата 19.9.2005, 16:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Цитата(GIK @ 19.9.2005, 15:19)
Подскажите кто нибуть для чего нужен "скрытый" объект

Ты не догоняешь зачем это или это противоречит твоей логике о формах? Если второе, то ты бравый верстальщик XForms smile

Действительно скрытый элемент не нужен, как и не нужно понятие формы. Есть submission, которых может быть много. А данные они берут из общих элементов с документа. Поэтому понятие "форма и её элементы" тоже устарело smile

Sumission можно составить как угодно, с любыми данными, валидация только на клиенте, сервер получает XML документ, который валидирует XML Schema(Relax NG etc.), принимает или отвергает данные. Минимум мышиной возни, минимум програмной логики на сервере.

Цитата(GIK @ 19.9.2005, 15:19)
Во первых, нормально ли то, что в функции postData, полю document.form1.holder2.value сначало присваивается значение равное пустой строке document.form1.holder.value, а уж потом этой строке присваевается значение value-document.form1.holder.value=value

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

Цитата(GIK @ 19.9.2005, 15:19)
И второй вопрос, почему в функции resetValue используется такая конструкция document.form1.ctyList[i].value , а не имя формы и эллемент, например так: document.form1.element[i].value

Сразу оговорюсь, имя форма больше не может иметь, это устаревший, запрещённый в XHTML аттрибут. Коллекция document.forms тоже устарела и не должна использоваться. Даём форме идентификатор, достаём по document.getElementById.
Далее, писать форма.имя_элемента уже нельзя, это загрязнение пространства имён пришло от старых браузеров, приводит к глюкам form.submit() если есть в форме элемент с именем submit. Обращаемся так: форма.elements.имя_элемента.

Обращение по индексу - очень плохой стиль, тем самым твой скрипт живёт ровно до первого изменения формы smile Поэтому забыли о document.forms[index] и form.element[index]


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
GIK
Дата 19.9.2005, 17:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Добрый человек
**


Профиль
Группа: Участник
Сообщений: 985
Регистрация: 3.6.2005
Где: я только не небыв ал

Репутация: 6
Всего: 14



sergei.z
Цитата
А если document.form1.holder2.value не пустая? т.е на кнопку нажали несколько раз.

sarbar
Цитата
В данном случае пустые строки, но по идее это передвижение значения от первого поля ко второму, видать логика на сервере что то с этим делает.

Т.е если нажимают второй раз, то document.form1.holder2.value получаемый значение от
document.form1.holder.value которому присвойли значение на предыдущем шаге(нажатии на кнопку), получает значение второй раз? Если это так, то для чего это?
И какая все же связь с сервером?


--------------------
Математика=>пиво=> програмирование, три вещи последовательны и совместимы !!!
Программирование - это не деятельнось! Программирование - это состояние души!
Бог - самый крутой программист.
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.4507 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.