JQuery / JavaScript Проверка формы даты - PullRequest
0 голосов
/ 22 апреля 2009

Я использую календарь выбора даты jQuery в форме. После отправки форма передает параметры через URL на сторонний сайт. Все отлично работает, кроме одного. Если значение, вставленное в поле даты календарем выбора даты, впоследствии удаляется или если удаляется дата по умолчанию, то есть в форме при загрузке страницы, и форма отправляется, я получаю следующую ошибку:

"Преобразование из строки" "в тип" Дата "недопустимо."

Решение моей проблемы действительно простое, я хочу проверить текстовое поле, в котором указана дата, и отправить дату по умолчанию (текущую дату), если поле пустое по какой-либо причине. Проблема в том, что я ужасен в Javascript и не могу понять, как это сделать.

Вот код формы для моего поля даты.

[var('default_date' = date)]
<input type="text" id="datepicker" name="txtdate" value="[$default_date]" onfocus="if (this.value == '[$default_date]') this.value = '';" onchange="form.BeginDate.value = this.value; form.EndDate.value = this.value;" />
            <input type="hidden" name="BeginDate" value="[$default_date]"/>
            <input type="hidden" name="EndDate" value="[$default_date]"/>

1 Ответ

3 голосов
/ 24 апреля 2010

Это действительно старо и, вероятно, решено, но какого черта.

Самый простой способ сделать это - добавить немного javascript к событию onchange входа.

onchange="if( this.value.length > 0 ) { form.BeginDate.value = form.EndDate.value = this.value; } else { form.BeginDate.value = form.EndDate.value = '[$default_date]'; } " />

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

...