Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Выбор даты и помещение в текстовое поле формы

501
21 июля 2005 года
hell_admin
110 / / 02.10.2004
Здрасте,
Такой вопрос как сделать такую фишку что бы в форме, рядом с полем text (<input type= text... )
была кнопочка по нажатию на которую открывался календарик и пользователь выбирал дату, а после выбора эта дата в нужном формате отображалась бы в этом текстовом поле.
Зарание спасибо.
304
22 июля 2005 года
Fenyx
707 / / 26.01.2005
Цитата:
Originally posted by hell_admin
Здрасте,
Такой вопрос как сделать такую фишку что бы в форме, рядом с полем text (<input type= text... )
была кнопочка по нажатию на которую открывался календарик и пользователь выбирал дату, а после выбора эта дата в нужном формате отображалась бы в этом текстовом поле.
Зарание спасибо.


Это делается JavaScript`ом... На кнопке - onclick(функция), запускающая новый докумет, открывающая скрытое поле div(span). Ну а окно или div по нажатию того же onclck, вставляет дату в text поле или еще куда... Функция по идее простая но много подводных камней...

287
26 июля 2005 года
Shiizoo
958 / / 14.03.2004
Если вырою свою реализацию, покажу. Правда она недоделанная, задача была другая а на календаре разминался. Камни и вправду есть, но вроде как все прошло успешно.
287
26 июля 2005 года
Shiizoo
958 / / 14.03.2004
Код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!ENTITY nbsp "&amp;#160;">
<html>
    <head>
        <title>Test</title>
        <meta http-equiv="Content-type" content="text/html; charset=cp1251">
        <style>
            table.calendar
            {
                position: absolute;
                z-index: 255;
                background-color: #4682B4;
            }
           
            table.calendar td
            {            
                font-family: Tahoma, Verdana, sans-serif;
                font-size: 12px;
                font-weight: 500;
                padding: 4px;
                text-align: center;                
            }
                       
            table.calendar tr.calendar-title td
            {
                background-color: #4682B4;
                font-size: 12px;
                font-weight: 500;
                color: #ffffff;
            }
           
            table.calendar tr.calendar-title td a, table.calendar tr.calendar-title td a:visited
            {
                font-family: Tahoma, Verdana, sans-serif;
                font-size: 12px;            
                font-weight: 500;
                text-decoration: none;
                color: #ffffff;
            }
           
            table.calendar tr.calendar-title td a:hover
            {
                text-decoration: none;
            }            
           
            table.calendar tr.calendar-wdays td
            {
                background-color: #87cefa;
                font-size: 11px;            
                font-weight: 900;
                color: #ffffff;          
            }
           
            table.calendar tr.calendar-days td
            {
                background-color: white;
                color: #000000;            
            }
           
            table.calendar tr.calendar-days td.calendar-today
            {
                background-color: #6DAEE5;
                font-weight: 900;
            }
           
            table.calendar tr.calendar-days td.calendar-choosen
            {
                background-color: pink;
                font-weight: 900;
            }            
           
            table.calendar tr.calendar-days td.calendar-empty
            {
            }          
        </style>
    <head>
    <body>  
        День <input type="text" id="day1">  
    </body>
    <script src="calendar.js" type="text/javascript"></script>
    <script>
        var Calendar = new Calendar();
       
        if (Calendar.setDate())
        {
            Calendar.setLanguage('ru');
           
            var mng = Calendar.build();
           
            if (mng)
            {
                mng = document.body.appendChild(mng);
            }
        }    
    </script>
</html>


Это HTML'ина в которой я это дело когда-то тестил. В аттачменте js с "классом" календаря. Вещица ужасно сырая, у меня тут куча экземпляров на разной стадии разработки, но все они отчасти на альфу какую-нибудь тянут. Как-то щас не до этого, но вообще хотелось бы довести до конца. Попробуй разберись, если найдешь время. Я не против заюзания где бы то ни было, тем более, что некоторую инфу по изголениям над датами я смотрел в либах под те или иные языки. Правда все-равно мало что понял, календарь - штука сложная, имхо. Хотелось бы еще в нему еврейский календарь привязать и другие:))

regLvDayFld и regRvDayFld (day/year/month) планировал как функции привязки к календарю полей получателей значения (то есть при закрытии календаря значения вставляются во все LvFld) и regRv как функции привязки к поставщику дат для календаря (при окрытии календаря тот собирает, по определенным правилам, даты с Rv полей, выбирает из них наиболее подходящие и ими же инициализируется, в противном случае использует свою последнюю дату, или сегодняшнюю). Идеи как у всех в общем;) Единственно с чем подзапоролся, видимо котелок совсем не варил, так это "1-ый день недели". Сделать и сейчас примерно представляю как, но когда занимался календарем искал более универсальный способ, вот только какой=))

Сырцы кстати не в лучшем виде, до достижения конечного результата вычищать никогда ничего не стараюсь;)

Кстати в паутине много всяческих реализаций, я видел и на php, java, js, еще может чем-нибудь. Только сырцы зачастую сотню раз перекошенные, видимо чтобы никто ничего не стырил, поэтому чтобы что-то в них переделать, если понадобится, придется немножко попотеть.. если конечно нет парсера приводящего эти каракули к понятному человеку виду;)
287
26 июля 2005 года
Shiizoo
958 / / 14.03.2004
Проще конечно реализовать на стороне сервера, меньше запар в смысле совместимости реализации с теми или иными браузерами.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог