Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Темы - Forza

Страницы: 1 2 [3] 4
31
Всё о Html / submit формы по нажатию на Enter
« : 25 Июля 2004, 20:22:27 »
Заметил я забавную вещь: если в форме одно текстовое поле, то по нажатию на Enter во время редактирование текстового поля происходит submit формы. Если добавить второе текстовое поле, то нет никакой реакции на Enter.
В чём грабли? Как это можно исправить (чтобы по Enter\'у submit был всегда!)?

Вот пример форм, реагирующей и нереагирующей на Enter:
 enctype="multipart/form-data">
Форма, не реагирующая на Enter (2 текстовых поля)

логин



пароль






enctype="multipart/form-data">
Форма, реагирующая на Enter (1 текстовое поле)

логин





32
Perl / проблемы с запросами к MySQL
« : 23 Июля 2004, 21:40:37 »
Есть таблица DVD-дисков, в которой хранятся русское и английские названия, описание фильма (обычно список актёров) и ряд параметров типа цены, признака новинки и т.д (2253 строки общим размером 172408 кб, если верить show table status). К базе приделан скрипт на Перле, который прекрасно работает за одним исключением. Нужно было сделать поиск. Чтобы диск был выбран, каждое ключевое слово должно присутствовать либо в русском названии, либо в английском, либо в описании.

  Таким образом для поиска буквы «икс» будет следующий SQL-запрос select * from dvd where (rus_name like \'%x%\' OR eng_name like \'%x%\' OR descript like \'%x%\' ) LIMIT 100 OFFSET 0.

  Как видно, в любом случае скрипт выводит не более 100 совпадений. При небольшом количестве совпадений всё работает нормально. Если совпадений от 200 и выше, то скрипт напрочь зависает (страница с поиском даже не показывается, а остаётся предыдущая). Самое интересное, что если отменить открытие страницы с помощью Escape и кликнуть по какой-либо другой рабочей ссылке скрипта, скрипт всё равно в этом окне IE больше работать не будет.

  Повторю, скрипт по-любому выводит не более 100 совпадений, и если их всего 150, то он нормально даёт переключаться между страницей с 100 совпадениями (OFFSET 0 в запросе) и остальными 50 (OFFSET 100).

  Конечно, скрипт выводит данные о дисках в форматированном виде со всякими мелкими рисунками-заполнителями и прочем. Если сделать примитивный неформатированный вывод, то ничего не виснет. Но я не думаю, что дело в том, что какая-то запись БД конфликтует с функцией вывода, так как та же функция используется для вывода алфавитного каталога (просто меняем условие в WHERE), и там всё работает без проблем.

  Подозреваю, что это описание весьма туманно для вас, но хотя бы подскажите, куда надо «копать»: какой-нибудь вариант, из-за которого могут быть эти грабли.
  Если нужны дополнительные сведения, скажите – я напишу. А то с я этим уже за##ался. :insane:

33
Какой самый универсальный (поддерживаемый большинством браузеров) способ показывать и убирать заранее предопределённый текст?
Пока приходит в голову объявить

Text to show & hide!

и функциях меняеть его параметр p1.style.display с пустого \'\' на \'none\' и обратно.
Если будет возможность динамически менять сам текст, вообще будет здорово.

Кстати, может кто-нибудь понятно объяснить, что значит значение \'block\' для style.display? Пытался понять это с помощью мануалов: увы, не удалось. :(

34
Может кто-нибудь дать ссылку или рекомендации как сделать с помощью JavaScript меню по аналогии с меню виндовского Проводника? Т.е. нажимаешь на "плюс" рядом с папкой, "плюс" превращается в "минус", а под папкой раскрывается список содержащихся в ней под-папок. Нажимаешь на "минус" - этот список закрывается.

Или подскажите хотя бы, как правильно называется такой тип меню (на русском и на английском). Поиск "динамических", "раскрывающихся" и т.д. меню в поисковиках пока не помогает. :confused:

35
Perl / проверка всех чек-боксов
« : 09 Июля 2004, 16:01:11 »
Как известно, по умолчанию из формы будут передаваться пары "name=value;" только для тех чек-боксов, которые были выбраны (checked). Т.е. если чек-боксы создаются как-нибудь динамически, то скрипту достаточно сложно узнать о невыбранных чек-боксах.
   Если создавать чек-боксы, используя функцию сheckbox()  модуля CGI.pm, то он для поддержки информации о чек-боксах создаёт в форме элемент типа , который отображается в URL как .cgifields=ifHappy.
   Но проблема в том, что методом param() этот .cgifields не ухватить - он его не видит!!!
 
  В чём грабли? Это можно как-нибудь обойти? Понятно, что в крайнем случае можно создавать свои собственные hidden для поддержки информации о чек-боксах. Но может быть, есть какое-нибудь более красивое решение?

36
JavaScript & JScript / JavaScript с этим справится?
« : 05 Июля 2004, 18:45:26 »
До сего момента писал на Перле, а из ДжаваСкрипт использовал примитивные вещи типа window.open().
Сейчас появилось 2 момента, которые на Перле не реализуемы (это точно так, да?).

1. Во-первых, надо сделать что-то типа похожее на использование адресной книги в почтовом веб-интерфейсе. Т. е. есть форма с текстовыми полями. По нажатию на одну из кнопок открывается новое окно (адресная книга), в котором можно выбрать что-либо (адресата). После закрытия этого окна в старом окне должно измениться содержимое одного из текстовых полей.
Нельзя в этом случае посылать первому окну команду перехода на новый url, в параметрах которого был бы адресат, выбранный из второго окна, т.к. в этом случае не сохранятся значения, которые пользователь ввёл вручную в другие текстовые поля (например, написал "Тему"). Или их как-то можно сохранять?

2. Второй момент похожий. Например, есть список хранящий подразделения предприятия. Надо чтобы при выборе подразделения в соседний список помещались люди из этого подразделения.
По-моему, для этого нельзя использовать параметр onchange для тега .

Поискав по форумам, я нашёл . Но в этом случае, во-первых, для передачи параметра choice=search надо заводить скрытое поле , что кажется не очень красивым. Кроме того, передаются совершенно ненужные координаты клика на рисунке (X и Y), которые отображаются в URL (да, форма работает через GET, так надо!), что ещё более некрасиво.
Как это можно побороть?

45
Perl / Выделение слов особым шрифтом
« : 23 Мая 2004, 11:57:43 »
Здравствуйте!
При выводах результата поиска по сайту иногда красиво выделять в выводимом тексте ключевые слова, по которым осуществлялся поиск.
Как это удобно сделать в Perl с соблюдением исходного регистра букв? Например, если $keyword = “Red”; то замена по $page =~ s/$keyword/$keyword<\\/b>/ig заменит слово “Red” в любых регистрах (reD, ReD и т.д.), но она заменит его не на те регистры, которые были в тексте изначально, а на тот, который прописан в $keyword – “Red”. Как это исправить?
Конечно, можно написать скрипт, который перебирает любые сочетания регистров букв в $keyword и заменяет их без параметра игнорирования регистра /i. Но это не оптимально, да? :)

И как сделать чтобы параметр /i влиял на работу с кириллицей при кодировке Win-1251? Где она прописывается в Perl?

Страницы: 1 2 [3] 4