Как ограничить пользовательский интерфейс datetime, чтобы выбрать только даты после сегодняшнего дня или сейчас? - PullRequest
0 голосов
/ 01 февраля 2019

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

<div class="col-lg-6 mb-4">
<asp:TextBox ID="endDateTb" CssClass="form-control" placeholder="EndDate" runat="server" TextMode="Date"></asp:TextBox>
</div>

Кроме того, если дата текстового поля больше сегодняшней (например, endDate = 2 января 2019 года, а теперь 3 января 2019 года), я бы хотела, чтобы база данных автоматически вызывалазапрос на удаление из базы данных.Любая идея, как я могу это сделать

1 Ответ

0 голосов
/ 01 февраля 2019

Вы можете установить свойство Attributes с атрибутом HTML min в коде для указания минимальной даты, поскольку текстовое поле будет отображаться как <input type="date">:

endDateTb.Attributes["min"] = DateTime.Now.ToString("yyyy-MM-dd");

Обратите внимание, что атрибут min долженуказывается в формате yyyy-MM-dd, в противном случае оно будет рассматриваться как минимальное значение.

Во-вторых, для сравнения дат вы можете использовать простое условие if для выполнения запроса на удаление:

// example to convert text box value to 'DateTime' instance
// if you have specific format, better to use DateTime.ParseExact or DateTime.TryParseExact
DateTime endDate = Convert.ToDateTime(endDateTb.Value); // or endDateTb.Text property

// compare both dates
if (DateTime.Today > endDate)
{
    // execute delete query here
}

Ссылка:

Ввод даты в формате HTML (MDN)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...