undefined: не могу установить значение атрибута

259
30 августа 2017, 16:01

В зависимости от страницы, на которой находится пользователь, ему должна показываться форма с датой. При условии c:if test="${listName != 'TODAY' and listName != 'TOMORROW'}", дата должна устанавливать, допустим на сегодняшний день, что и делает скрипт. Однако скрпит отрабатывает только тогда, когда условия отсутствует.

    $(document).ready(function () { 
      var today = new Date(); 
      var day = today.getDate() < 10 ? '0' + today.getDate() : today.getDate(); 
      var month = today.getMonth()+1 < 10 ? '0' + (today.getMonth()+1) : (today.getMonth()+1); 
      var date = day + '.' + month + '.' + today.getFullYear(); 
      $('#dateNow').val(date); 
      alert($('#dateNow').val()); 
    });
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
<c:if test="${listName != 'TODAY' and listName != 'TOMORROW'}"> 
    <div class="form-group"> 
      <label class="control-label col-xs-3" for="dateNow">date:</label> 
      <div class="col-xs-9"> 
        <input id="dateNow" name="dateTask" required placeholder="date"/> 
      </div> 
    </div> 
</c:if>

Answer 1

По сути ответ мне дал в виде комментария @Grundy:
"похоже на шаблонизатор. При невыполнении условия блок внутри просто не добавляется на страницу, поэтому $('#dateNow') не найдет ни одного элемента, и вполне логично что у ничего значение тоже будет undefined". Спасибо

READ ALSO
Нужна помощь в jquery

Нужна помощь в jquery

Ребят, такие дела, нужно при разрешении меньше 992px добавить ссылкам меню определенный классКак класс добавить я сам понимаю, помогите дополнить...

274
Создать массив параметров

Создать массив параметров

Пробую использовать библиотеку bootboxjs

335
Проблема с приемом данных JSON в PHP

Проблема с приемом данных JSON в PHP

В общем написал скрипт который собирает все введенное из формы, и посылает данные в PHPНо тут проблема массив $_POST пуст

287
Перенос строк в jQuery [дубликат]

Перенос строк в jQuery [дубликат]

На данный вопрос уже ответили:

423