я использую asp. net mvc c#, я в моем примере мне нужно, чтобы пользователь ввел дату, и я проверю, если дата, которую этот пользователь ввел, находится между датой от даты и датой что я прочитал его из базы данных, тогда я отправлю форму, иначе должно появиться предупреждение.
мой вид бритвы
@foreach (var obj in Model)
{
<tr data-myLoop="loop">
<td data-date="date"> @Html.DatePicker("myList[" + index + "].UserDate",
obj.InterviewDate) </td>
<td class="hidden" data-fromDate="fromDate">
@Html.Hidden("myList[" + index + "].FromDate", obj.FromDate)
</td>
<td class="hidden" data-toDate="toDate">
@Html.Hidden("myList[" + index + "].toDate", obj.toDate)
</td>
</tr>
index++;
}
в java скрипт:
$("[data-myLoop='loop']").each(function () {
var fromDate= $(this).find('[data-fromDate="fromDate"]').find('input[type="hidden"]').val();
var ToDate= $(this).find('[data-toDate="toDate"]').find('input[type="hidden"]').val();
var userDate = $(this).find('[data-date="date"]').datepicker('getDate');
if(userDate < fromDate || userDate > ToDate)
alert("not in range");
});
Но это сравнение не всегда дает ожидаемый результат. я думаю, потому что тип fromDate и toDate это строка в javascript не дата.
Как я могу решить эту проблему?