Im triying для проверки поля datetime с inobstrusive validation.Насколько корректно проверять DateTime в MVC Unobtrusive Validation?
Если вход 01/01/2017 10:00
тогда я получаю
Поле [fieldId] должна быть дата.
Однако поле должно быть не датой, а датой.
Параметр устанавливается, как это в моей модели:
[Display(Name = "Start")]
[DataType(DataType.DateTime)]
public DateTime start { get; set; }
Я не был в состоянии correctally проверки поля ввода с датой и времени.
Как это сделать?
Код, который вы показали, будет ** ** не приводит к ошибке проверки на стороне клиента для значения '01.01.2017 10:00 '(если вы не сделали что-то вроде переопределенного метода' date' в '$ .validator'). Если вы получаете ошибку на стороне клиента, то это потому, что вы ввели значение, которое не является допустимой датой. –
Кажется, что это ошибка культуры, даже я установил правильную культуру в web.config, проверка клиента ожидает дату MM/dd/yyyy, а не локализуемую культуру. –
Культура на сервере не влияет на браузер. И по умолчанию 'jquery.validate.js' проверяет даты в формате MM/dd/yyyy. Но '01/01/2017 10: 00' действительно проходит либо в формате' MM/dd/yyyy', либо 'dd/MM/yyyy'). Если, с другой стороны, ваш ввод говорит '20/1/2017' (20 января), тогда он будет генерировать ошибку на стороне клиента. Если это так, вам нужно просто перенастроить валидатор. Но это не то, о чем вы спрашиваете, так что если это то, что вы переживаете, отредактируйте вопрос, и я могу дать вам ответ на его решение. –