Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 1 Ответов
  • 3662 Просмотров
*

slepoy

  • Давно я тут
  • 753
  • 24 / 0
  • Тотальная шизофазия
Здравствуйте. На сайте гостям разрешено оставлять комментарии. при этом доступно 2 поля ввода персональной информации ("Имя" и "E-Mail") - другие поля в будущем добавляться не будут.
А вопрос собственно такой, возможно ли поместить текст "Имя (обязательное)" и "E-Mail (обязательное)" внутрь соответсвующих полей, как это можно наблюдать с mod_search, где слово "поиск..." находится в поле, а при щелчке по нему, оно пропадает, что позволяет произвести ввод символов.

Вероятно, если нет готового решения, то потребуются сложные действия, которые мне не по силе,.. поэтому как альтернативный вариант, планирую сделать примерно так:

Но дабы избежать излишней траты времени на возню с фаербагом, хотел бы получить "направление". Что тут следует сделать? Убрать <p> в одном из файлов шаблона или загнать эти поля в таблицу с 2-мя колонками?
*шаблон дефолтовый
Большое спасибо!
Помог? Поставь(те) плюс в репутацию.
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Ну попробуйте сделать вот так:

Открываем /components/com_jcomments/tpl/default/tpl_form.php и меняем:

Код: php
<input id="comments-form-name" type="text" name="name" value="" maxlength="<?php echo $this->getVar('comment-name-maxlength');?>" size="22" tabindex="1" />
<label for="comments-form-name"><?php echo JText::_('FORM_NAME'); ?></label>
и меняем на:
Код: php
<input id="comments-form-name" type="text" name="name" value="" maxlength="<?php echo $this->getVar('comment-name-maxlength');?>" size="22" tabindex="1" onblur="if(this.value=='') this.value='<?php echo JText::_('FORM_NAME'); ?>';" onfocus="if(this.value=='<?php echo JText::_('FORM_NAME'); ?>') this.value='';" />

и точно так же с e-mail:

Код: php
<input id="comments-form-email" type="text" name="email" value="" size="22" tabindex="2" />
<label for="comments-form-email"><?php echo $text; ?></label>
и меняем на:
Код: php
<input id="comments-form-email" type="text" name="email" value="" size="22" tabindex="2" onblur="if(this.value=='') this.value='<?php echo $text; ?>';" onfocus="if(this.value=='<?php echo $text; ?>') this.value='';" />

Но тут возможна другая проблема, если нажмут кнопку Отправить, то эти строки уйдут как Имя и E-mail... Чтобы такого не было, нужно еще немного поправить jcomments-v2.1.js.  Либо чуть усложнить форму - реальны поля с именем и адресом сделать скрытыми, а вот в этих визуальных забрасывать в реальные поля данные в том случае, если пользователь хоть что-то ввел.

По второй части вопроса - можно таблицей, можно заменить P на DIV и дальше стилями их расставить. Единственное, что критично в форме - это элементы формы, у которых проставлены атрибуты ID - вот их трогать не нужно.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться