Архив Айгуст —
архив помогалки Августа
«Никто не вечен… В отличие от знаний»
Внимание!
  Материалы на данном сайте представляют собой архивную копию форума «Айгуст - помогалка Августа» на момент октября 2019 года с целью сохранения знаний. Все права на материалы принадлежат их авторам. Материалы представлены в открытый доступ в ознакомительных целях, запрещено их коммерческое использование без согласования с авторами. Администрация сайта не несёт ответственности за содержание материалов, в том числе за наличие вредоносных закладок в коде, используйте любой предоставленный код на свой страх и риск. Рекомендуется проверять любые файлы вручную и перезаливать на собственный хостинг, дабы избежать возможной модификации или исчезновения в будущем.

Год в анкете в виде выпадающего списка

12.05.2012 18:21:33
Год в анкете в виде выпадающего списка
В Люди->Регистрация->HTML-Код анкеты добавляем следующий скрипт:
Вариант 1 - поле 'год' обязательное
<script type="text/javascript">
(function(){
var inputName = 'uf[Year]';
var minAge = 0; // минимальный возраст
var maxAge = 100; // максимальный возраст
var input = document.getElementsByName(inputName);
if(input.length && input[0].tagName == 'INPUT'){
var today = new Date;
var year = today.getFullYear();
var minYear = year-maxAge;
var maxYear = year-minAge;
var setYear = input[0].value;
var select = document.createElement('SELECT');
for(var i = minYear; i <= maxYear; i++){
var option=document.createElement('OPTION');
option.text = i;
option.value = i;
if(i == setYear) option.selected = true;
try {
select.add(option,select.options[null]);
} catch (e) {
select.add(option,null);
}
}
select.name = inputName;
select.className = 'inp';
input[0].parentNode.replaceChild(select, input[0]);
}
})();
</script>
Добавлять лучше всего в конец шаблона, после вывода всех полей, иначе скрипт может и не сработать.
Если нужно ограничить возраст реги, меняем var minAge = 0 на другое число, например var minAge = 18
#22279
12.05.2012 18:28:18
Re: Год в анкете в виде выпадающего списка
Вариант 2 - с пустым годом вначале списка (для необязательного поля 'год')
<script type="text/javascript">
(function(){
var inputName = 'uf[Year]';
var minAge = 0; // минимальный возраст
var maxAge = 100; // максимальный возраст
var input = document.getElementsByName(inputName);
if(input.length && input[0].tagName == 'INPUT'){
var today = new Date;
var year = today.getFullYear();
var minYear = year-maxAge;
var maxYear = year-minAge;
var setYear = input[0].value;
var select = document.createElement('SELECT');
var option=document.createElement('OPTION');
option.text = "";
option.value = "";
option.selected = true;
try {
select.add(option,select.options[null]);
} catch (e) {
select.add(option,null);
}
for(var i = minYear; i <= maxYear; i++){
option=document.createElement('OPTION');
option.text = i;
option.value = i;
if(i == setYear) option.selected = true;
try {
select.add(option,select.options[null]);
} catch (e) {
select.add(option,null);
}
}
select.name = inputName;
select.className = 'inp';
input[0].parentNode.replaceChild(select, input[0]);
}
})();
</script>
#22280
20.05.2012 21:34:09
Re: Год в анкете в виде выпадающего списка
А можно пример этого глянуть?
#22712
20.05.2012 23:15:46
Re: Год в анкете в виде выпадающего списка
Биение: А можно пример этого глянуть?
[изображение]
#22716
22.05.2012 01:54:28
Re: Год в анкете в виде выпадающего списка
kent:
Биение: А можно пример этого глянуть?
[изображение]
Спасибо)
#22762

Другие темы раздела