Помогите со списком select onchange

Тема в разделе "JavaScript", создана пользователем danneo, 3 авг 2012.

Модераторы: ZiX
  1. danneo

    danneo Честный

    Регистр.:
    13 ноя 2007
    Сообщения:
    1.463
    Симпатии:
    114
    Подскажите, как сделать, чтобы при пункте из списка "Выберите" в поле выводилось по умолчанию значение из предложенного списка, например, 15 дней. Если пользователь ничего не выбрал, то в поле указано 15 дней. Если выбрал, то меняется на выбранное. Если снова вернул значение "Выберите", то значение в поле также менялось на "по умолчанию" - 15 дней.

    Код:
    {dcalendar('post[totime]', $totime)} //Поле изменения
    
    <select onchange="Vu('posttotime').value=this.value;">
    <option value="">Выберите</option>
    <option value="{timetodate($ADS_TIME+86400*3, 3)}">1 день</option>
    <option value="{timetodate($ADS_TIME+86400*7, 3)}">Неделя</option>
    <option value="{timetodate($ADS_TIME+86400*15, 3)}">15 дней</option>
    </select>
     
  2. CraZee

    CraZee

    Регистр.:
    11 сен 2006
    Сообщения:
    603
    Симпатии:
    665
    В интернете эта ситуация описана широко:


    http://bit.ly/Nq4TsS
     
  3. danneo

    danneo Честный

    Регистр.:
    13 ноя 2007
    Сообщения:
    1.463
    Симпатии:
    114
    Если бы я разбирался в JS, не спрашивал бы...

    Заменил
    Код:
    <option value="">Выберите</option>
    на
    Код:
    <option value="{timetodate($ADS_TIME+86400*7, 3)}
    ">Выберите</option>
    В поле выводится, как нужно, но только дата исчисляется неправильно... выводит 1970 год :) Как сегодняшнюю дату передать?
     
  4. danneo

    danneo Честный

    Регистр.:
    13 ноя 2007
    Сообщения:
    1.463
    Симпатии:
    114
    Получилось сделать только если вручную что-то менять, то при выборе пункта "Выберите", ставится 15 дней. А если пользователь не трогал данный список, то в поле даты все пусто. А должно быть по умолчанию 15 дней, если ничего не трогали.