Добро пожаловать, Гость. Пожалуйста авторизуйтесь здесь.
FGHIGate на GaNJa NeTWoRK ST@Ti0N - Просмотр сообщения в эхоконференции RU.LINUX
Введите FGHI ссылку:


Присутствуют сообщения из эхоконференции RU.LINUX с датами от 24 Jan 02 06:01:34 до 21 May 24 12:37:41, всего сообщений: 8303
Ответить на сообщение К списку сообщений Предыдущее сообщение Следующее сообщение
= Сообщение: 6967 из 8303 ========================================= RU.LINUX =
От   : Victor Wagner                    2:5020/400         31 Dec 02 21:07:54
Кому : Alex Korchmar                                       31 Dec 02 21:07:54
Тема : Re: M$ может купить Macromedia
FGHI : area://RU.LINUX?msgid=wagner.wagner.home+12f9aad7
На   : area://RU.LINUX?msgid=ddt.demos.su+3c394722
= Кодировка сообщения определена как: IBM866 =================================
==============================================================================
From: vitus@45.free.net (Victor Wagner)

Alex Korchmar <alx@e-moe.ru> wrote:
AK> Victor Wagner <vitus@45.free.net> wrote:

VW>> С какой стати это мое изобретение? Когда я пришел в веб-программирование
VW>> лет этак пять назад, мне это показывали как стандартный прием.

VW>> После сабмита проверяешь наличие переменной button1. Если она
AK> охрененно. У тебя поля базы даных для выбора:

AK> [id] <select1> - можешь вводить, если помнишь, что, можешь нажать select
AK> и выбрать (а там внутри еще и поиск бывает хитрый - и опять все за
AK> собой тащить).

Для этого select действительно имеет смысл делать всплывающее окно
Javascript-ом.  Если там поиск бывает хитрый. Если не бывает, то
это честный HTML-ный тэг select. Который, правда, не позволяет вводить.

Hа случай пользователя, у которого JavaScript отключен, кнопку,
вызывающую окно поиска делаем не type=button, а type=submit
name=select1_choose.

Увидев в пришедшем запросе параметр с именем select1_choose, скрипт
генерирует форму похожую на то окно, которое вылезает при открытии
окошка Javascript-ом, но
1. Результат выбора сабмитящую на сервер, а не помещающую в
opener.form.select1,
2. Прокидывающую через скрытые поля значения полей
field1, field2, select2.

В результате имеем,
а) пользователь со включенноым JS нажав кнопку рядом с полем select1,
получает popup - окошко, в котором он может сделать хитрый поиск,
а по нажатию на кнопку "Выбрать" результат его выбора попадает в поле
select1 основной формы.

б) у пользователя lynx (или с отключенным JavaScript) форма для хитрого
поиска замещает основную форму, но при возврате из нее (посредсвом ее
родной кнопки выбрать) все введенные им в другие поля значения
автомагически оказываются на месте.


AK> [field1] [field2] <select2> (а это чтоб тебе не пришло в голову упростить
AK> дело, вынеся первый выбор на предыдущий уровень интерфейса) [field3] ...
AK> <add> <replace> <delete>

Вот эти add replace и delete это три кнопки, которые input type=submit


С именами соответственно add, replace и delete

Скрипт, который обрабатывает результаты ввода в эту форму устроен
примерно так (в предположении, что это perl и use CGI)

if ($cgi->param('select1_choose'))  {
   do_fallback_for_select1($cgi);
} elsif ($cgi->param('select2_choose')) {
   do_fallback_for_select2($cgi);
} elsif ($cgi->param('delete')) {
   do_delete($cgi);
} elsif ($cgi->param('replace)) {
   do_replace($cgi);
} else {
   # Если ни одну кнопку не жали, а жали Enter, действие по умолчанию
   # add
   do_add($cgi);
}  


AK> - вполне, в общем-то, частая задача.

Ты не смеши меня. У меня бывают формы, где подобных кнопок, вызывающих
окошки для хитрого выбора под 20 штук. И все это прекрасно работает.
В том числе и в lynx. Правда, интерфейс, который работает в lynx не всем
дают. Ровно потому что там кнопок 20 а это для простого юзера немножко
слишком много.

А для простого юзера типичное число кнопок 8-10 из которых
3-4 это submit-ы вызывающие то или иное действие, а остальные - кнопки,
которые в случае наличия JS открывают попап окна.

AK> охренненная находка - селектором выбирать действие единственного submit'а.

Кто тебе это предлагал? Ты это, все-таки читал бы что тебе пишут.

Подозреваю что сам ты в эту область просто не лазал, а говоришь со слов
какого-нибудь веб-дизастера, который учился web-программированию по
книжке DHTML для чайников за 15 минут.


AK> А главное чего ради - ради одного из тыщи?
AK> вот конкретно вебмагизин сделав с таким "интерфейсом" - скорее всего
AK> потеряешь больше посетителей, чем приобретешь за счет тех, у кого ничего
AK> кроме lynx отродясь не водилось.

Понимаешь ли, Алекс, не все на свете измеряется в деньгах, хитах и
показах баннеров, особенно последних. У программиста должно быть
самоуважение. Вот его можно потерять, если писать так как ты
предлагаешь. Если не принимать во внимание одного из тысячи.

Еще можно потерять умение решать задачи usability в условиях жестких
технических ограничений. Тогда получится что следующая более сложная
форма будет работать только в одной конкретной версии одного конкретного
браузера. И таки ее придется делать три-четыре версии.

И терять в три-четыре раза больше человеко-часов на разработку.




--
пользователь Ю. Конечный из г. Великоламерска.
--- ifmail v.2.15dev5
* Origin: Free Net of Leninsky,45 (2:5020/400)

К главной странице гейта
Powered by NoSFeRaTU`s FGHIGate
Открытие страницы: 0.079877 секунды