Спрятать бы незаполненные поля в профилях...

#16 18 февраля 2012 в 19:14

Positive,
по вопросу 2, разве заголовок не решает проблему? пишите понятные заголовки с пояснениями

Veris
Но тогда эти заголовки будут длинными и с пояснениями, обращёнными к юзеру… И все эти потроха будут видны пользователям, просматривающим профиль.

Можно, конечно, без этих пояснений, но подсказки вносят ясность и стимулируют к заполнению пунктов.
Подсказки лучше вывести под поля для заполнения, а не в них, как сейчас. Тогда они не исчезнут при заполнении и будут полезны при редактировании профиля. Это кажется совсем не принципиальной мелочью. Но такие мелочи на самом деле очень значимы.
#17 18 февраля 2012 в 19:25

также можно убирать value с помощью js
Код PHP:
1 <input type="text" id="email" name="email" value="Ваш текст"
2 onfocus="if (this.value=='Ваш текст') this.value='';"
3 onblur="if (this.value==''){this.value='Ваш текст'}" />

Veris
Veris, поясните. Не понял что делает этот код и куда его вставить…
#18 20 февраля 2012 в 13:58
это пример кода, где значение value (то что вы вводите в Текст)
удаляются при щелчке по полю, и снова возвращаются если человек ничего не написал в поле, а если написал, то остается и передается только то что он написал.

точно сказать не могу куда прописывать, сам только разбираюсь, ищите где то в шаблонах форм или как-то так
#19 20 февраля 2012 в 18:18


это пример кода, где значение value (то что вы вводите в Текст)
удаляются при щелчке по полю, и снова возвращаются если человек ничего не написал в поле, а если написал, то остается и передается только то что он написал.

точно сказать не могу куда прописывать, сам только разбираюсь, ищите где то в шаблонах форм или как-то так

Veris
Вероятно, это может решить проблему, точнее исправить недоработку. Главное — вставить в нужное место...
Но если бы подсказки выводились под поле было бы лучше.
#20 25 октября 2012 в 21:38

или попробуйте подгружать в самом начале через заголовок стандартным методом через отдельный файл
Код PHP:


{add_js file="templates/_default_/js/no_def_field.js"}

• Mike •
Попобовал сейчас на InstantCMS 1.10 RC5, не работает((
#21 25 октября 2012 в 22:16
в 1.10 формы другие можно попробовать их просто отредактировать, там новые функции и свойства…
#22 25 октября 2012 в 22:23
и в этой теме можно посмотреть, я помню убирал там поля без значений сравнить только и найти где это формируется в 1.10, если не к спеху, то посмотрю и скажу точнее…
#23 25 октября 2012 в 22:37
В 1.10 все решается в шаблоне, добавлением одного условия
Было
  1. {if $cfg.privforms && $usr.form_fields}
  2. {foreach key=tid item=field from=$usr.form_fields}
  3. <div class="field">
  4. <div class="title">{$field.title}:</div>
  5. <div class="value">{if $field.field}{$field.field}{else}<em>{$LANG.NOT_SET}</em>{/if}</div>
  6. </div>
  7. {/foreach}
  8. {/if}
Стало
  1. {if $cfg.privforms && $usr.form_fields}
  2. {foreach key=tid item=field from=$usr.form_fields}
  3. {if $field.field}
  4. <div class="field">
  5. <div class="title">{$field.title}:</div>
  6. <div class="value">{$field.field}</div>
  7. </div>
  8. {/if}
  9. {/foreach}
  10. {/if}
#24 25 октября 2012 в 22:41
ну, вот, всё ещё проще оказалось… )
#25 25 октября 2012 в 23:44


ну, вот, всё ещё проще оказалось… )

• Mike •

Работает всё, кроме поля "Интересы (метки)" — метки не указаны — почему-то…
Впрочем, и в таком виде нормально. Спасибо!
#26 17 апреля 2013 в 11:50
Полезная тема. Решение Fuze работает отлично.
У меня вопрос по той же форме. Нужен вывод только определенных полей, но не подряд, а выборочно, ну и соответственно, если эти поля заполнены. Заранее спасибо.
#27 17 апреля 2013 в 17:03
• Mike •, спасибо еще раз за решение — реально сейчас страницы с профилями дают хороший процент трафика. Вот бы еще всех приучить эти поля заполнять = было бы супер!
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.