Похоже, вы выполняете встроенный JavaScript при загрузке страницы. В этом случае селектор #basics
не сможет найти ввод с помощью id="basics"
, поскольку он еще не был проанализирован и отображен в теле документа.
Ваше решение может быть таким же простым, как перемещение элемента script
в вашем коде на позицию после элемента input
.
Более того, подпишитесь на событие готовности документа или загрузки документа и выполните код jQuery в обработчике этого события.
$(document).ready(function() {
$("#basics").datepicker();
});
В этом есть ряд преимуществ. Вы можете быть уверены, что весь DOM готов к использованию, и нет никакой зависимости от порядка исходного кода, что означает, что вы можете в будущем переместить JavaScript во внешний файл, чтобы использовать различные механизмы кэширования на стороне клиента .