01.03.2012, 15:40

Js - интересный хак


Всем доброго времени суток, с вами снова я - Артем (by_frenki_MALCOV) Малков. Я все время люблю экспериментировать с возможностью ucoz системы, и не давно я задался вопросом, а как немного украсить поля ввода данных в том или ином модуле. Сначала я конечно воспользовался искусствами css, вытягивал id и class'ы, но мне показалось это как то просто,и не все изменения доступны этим способом. После чего я вспомнил что есть js скрипт под названием авто заполнение тегов. Их существуем множество, но нам потребуется именно вот такой скрипт:
Код
<script type="text/javascript">
$('input[name="title"]').keyup(function() {
$('input[name="tags"]').val($(this).val().split(' ').join(','))
});
</script>

Как вы видите, данный скрипт заполняет поле теги тем, что вы указали в графе название материала. И так, сейчас мы создадим с помощью этого скрипта поле, которое будет передавать введенную информацию в системное поле. Для начала напишем код простого поля
Код
<input type="text" size="35" style="width:100%;" name="lohnoepole" maxlength="140" />

И теперь изменим немного наш скрипт, для того чтобы он заполнял настоящее полет тем, что ввели в ложное, и добавить вывод введенных данных в ложное поле.
Код
<input type="text" size="35" style="width:100%;" name="lohnoepole" maxlength="140" />
<script type="text/javascript">
$('input[name="lohnoepole"]').val($('input[name="title"]').val());
$('input[name="title"]').keyup(function() {
$('input[name="lohnoepole"]').val($(this).val());
});
</script>

Тут как вы поняли мы создали свое поле, к которому можете указать нужные стили, и при этом оно будет рабочим. Системное поле можете просто скрыть. Ах да, забыл, name="title" и name="lohnoepole" эти данные не должны повторяться. То есть у каждого созданного поля должен быть свой name. А куда должны передаваться данные, вы можете найти в исходном коде. name="lohnoepole" это ваше поле, а это куда нужно передавать данные input[name="title"].
А вот эта первая строчка скрипта отвечает за вывод уже введенных данных
Код
$('input[name="lohnoepole"]').val($('input[name="title"]').val());

остальные две за ввод.
Если вам нужно вводить и выводить данные с поля textarea в textarea а не с input то пользуйтесь вот этим скриптом
Код

<script type="text/javascript">
$('textarea[name="lohnoepole"]').val($('textarea[name="title"]').val());
$('textarea[name="title"]').keyup(function() {
$('textarea[name="lohnoepole"]').val($(this).val());
});
</script>


Ну вот собственно и все, если есть вопросы, задавайте в комментариях.



Источник/Автор: http://artem-malcov.ru

Категория: uCoz интересные решения | Добавил: frenkmalcov (01.03.2012) Просмотров: 1034 | Рейтинг: 4.7/3
Пока комментариев нет. Ты можешь быть первым!
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]