У меня есть два текстовых поля, txtStartDate, txtEndDate, которые позволяют пользователям выбирать дату в формате (дд/мм/гггг). Мне нужно создать валидатор, который проверяет, не превышает ли количество дней между этими двумя выбранными датами пользователя 45 дней или меньше. Могу ли я использовать один из элементов Validator, например Range или Compare, или мне нужно создать пользовательский валидатор? Любые примеры были бы очень полезными.Контрольные проверки Количество дней между двумя датами
ответ
Попробуйте этот блок:
Dim st As String = txtClientSerStartTime.Text
Dim et As String = txtClientSerEndTime.Text
Dim time1 As DateTime
DateTime.TryParse(st, time1)
Dim ts1 As New TimeSpan(time1.Hour, time1.Minute, time1.Second)
Dim time As DateTime
DateTime.TryParse(et, time)
Dim ts As New TimeSpan(time.Hour, time.Minute, time.Second)
Dim dur As TimeSpan = ts - ts1
Dim unit As Decimal = dur.Hours
If unti = 45 Then
'do something'
Else
'do something'
End If
Куда будет идти этот блок кода? –
Вы можете использовать CustomValidator
:
<asp:CustomValidator id="StartEndDiffValidator"
ValidateEmptyText="true"
ClientValidationFunction="StartEndValidate"
OnServerValidate="StartEndValidate"
Display="Dynamic"
ErrorMessage="Timespan between start and end must be exactly 45 days"
runat="server"/>
This answer приведет вас к ClientValidationFunction
.
Всегда осуществлять также проверку стороны сервера:
void StartEndValidate(object source, ServerValidateEventArgs args)
{
DateTime startDate;
DateTime endDate;
bool isStartDate = DateTime.TryParse(txtStartDate.Text, out startDate);
bool isEndDate = DateTime.TryParse(txtEndDate.Text, out endDate);
if(isStartDate && isEndDate)
{
int days = (endDate - startDate).Days;
args.IsValid = days == 45;
}
else
{
args.IsValid = false;
}
}
Вы также можете использовать CompareValidators
с Operator
набором свойств для ValidationCompareOperator.DataTypeCheck
и Type = Дата, чтобы гарантировать, что дата была введена в обеих.
Если вы можете дать мне подробные примеры, это будет очень полезно, например, как выглядит CustomValidator, а также функция Javascript. –
@ScrumMaster: Я добавил дополнительные сведения о разметке customvalidator и проверке сервера. В настоящее время у меня нет времени, чтобы показать вам возможную реализацию javascript. Попробуйте сами со ссылкой, которую я предоставил (либо [ввод данных jQuery] (http://jonathanleighton.com/projects/date-input/#date-formatting), либо [функции Matt Kruse date] (http: // www .mattkruse.com/JavaScript/дата /)). –
- 1. Количество дней между двумя датами
- 2. iPhone - получить количество дней между двумя датами
- 3. d3.js количество дней между двумя датами
- 4. Spark - Scala - количество дней между двумя датами
- 5. Как узнать количество дней между двумя датами
- 6. Как рассчитать количество дней между двумя датами
- 7. Какое количество дней между двумя датами?
- 8. AngularJS - Javascript количество дней между двумя датами
- 9. Показывать количество дней между двумя датами датпикера?
- 10. Количество дней между двумя датами в Android
- 11. Количество рабочих дней между двумя датами
- 12. Количество дней между двумя заданными датами
- 13. Как получить количество дней между двумя датами
- 14. Количество дней между двумя датами в Тимелеафе
- 15. Рассчитать количество дней между двумя датами?
- 16. Как рассчитать количество дней между двумя датами?
- 17. Соберите количество дней между двумя датами
- 18. Найти количество дней между двумя указанными датами
- 19. Подсчитайте количество рабочих дней между двумя датами?
- 20. Сколько дней между двумя датами?
- 21. Сколько дней между двумя датами
- 22. Листинг дней между двумя датами
- 23. Подсчет дней между двумя датами
- 24. Получить дней между двумя датами
- 25. разницы дней между двумя датами
- 26. hql дней между двумя датами
- 27. высчитывает количество дней между датами
- 28. Определить количество дней между датами
- 29. дней между двумя датами в SQL Server
- 30. Число дней между двумя датами - ANSI SQL
Я решил удалить свой ответ, потому что вы просто ленитесь, чтобы внести свой вклад даже при небольшой попытке. Если вы этого не измените, вам не подходит этот сайт или что-то еще. –