Проверка даты

Как мы использовали проверку данных на asp.net? дата не может быть вставлена ​​больше текущей даты.

4 ответа

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

  <asp:CompareValidator id="Compare1" 
       ControlToValidate="TextBox1"
       Type="Date"
       runat="server"/>

В коде позади множества Compare1.ValueToCompare = new DateTime(...); а также Compare1.Operator = ValidationCompareOperator.LessThanEqual;

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

В решении JavaScript,

Убедитесь, что для часов, минут, секунд и миллисекунд установлено значение 0, если вы просто хотите сравнить даты (т.е. день, месяц и год). Функция для достижения вышеупомянутого заключается в следующем,

function f_tcalResetTime (d_date) {
    d_date.setHours(0);
    d_date.setMinutes(0);
    d_date.setSeconds(0);
    d_date.setMilliseconds(0);
    return d_date;
}

Если вы сравниваете даты, JavaScript на самом деле вызывает функцию date.valueOf за кулисами, которая возвращает количество миллисекунд, прошедших с полуночи 1 января 1970 года.

Использовать CustomValidator решит ваши проблемы легко.

CustomValidator

или же

Вы можете использовать JavaScript для проверки вашей даты, как показано ниже

var myDate=new Date();
myDate.setFullYear(2010,0,14);
var today = new Date();

if (myDate>today)
  {
  alert("Today is before 14th January 2010");
  }
else
  {
  alert("Today is after 14th January 2010");
  }

Хорошее свидание приятель. Есть много доступных вариантов. Вы можете использовать пользовательский элемент управления валидатора asp.net, javascript и т. Д. Лучшим вариантом будет использование расширителя редактирования маскируемого набора инструментов управления AJAX с средством проверки маскируемого редактирования. Вы можете указать диапазоны, пользовательскую маску (гггг / мм / дд) и даже пустое поле сообщения с этим.

Просто убедитесь, что вы правильно настроили культуру своего веб-сайта, чтобы правильно проверять даты. http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/MaskedEdit/MaskedEdit.aspx

Приветствия.

<ajaxToolkit:MaskedEditValidator
ControlExtender="MaskedEditExtender2"
ControlToValidate="TextBox2" 
IsValidEmpty="False" 
MaximumValue="12000" 
EmptyValueMessage="Number is required"
InvalidValueMessage="Number is invalid"
MaximumValueMessage="Number > 12000"
MinimumValueMessage="Number < -100"
MinimumValue="-100" 
EmptyValueBlurredText="*" 
InvalidValueBlurredMessage="*" 
MaximumValueBlurredMessage="*" 
MinimumValueBlurredText="*"
Display="Dynamic" 
TooltipMessage="Input a number: -100 up to 12.000"/>
Другие вопросы по тегам