#asp.net
#asp.net
Вопрос:
У меня есть этот бит в codebehind:
txtDBirth.Text = DateTime.Now.ToString("Mon dd yyyy")
Мы хотели бы, чтобы дата отображалась в формате Месяц День Год, как в 07 октября 2011
Затем в разметке у меня есть это:
<asp:TextBox runat="server" ID="txtDBirth" CssClass="TextBox" />
Когда мы запускаем этот код, мы бы значение этого:
txtDBirth.Text = DateTime.Now.ToString("Mon dd yyyy")
чтобы появиться внутри
<asp:TextBox runat="server" ID="txtDBirth" CssClass="TextBox" />
возможно, как:
<asp:TextBox runat="server" ID="txtDBirth" CssClass="TextBox" value="Oct 07 2011/>
Идея в том, что значение даты в разметке автоматически изменится на дату текущего дня.
Возможно ли это?
Комментарии:
1. Почему вы хотите это сделать? Вы знаете, что
<asp:TextBox/>
переводится на<input type="text"/>
в HTML? Может быть, вы вообще не хотите менятьTextBox
?2. Спасибо, Джон, за быстрый ответ. Что мы пытаемся сделать, так это сравнить эту дату с текущей датой месяца, дня года, как указано выше. Если дата на странице разметки равна текущей дате, то отобразите одно сообщение. Если нет, покажите другое сообщение. Есть ли более простой способ сделать это?
Ответ №1:
Вы можете сделать это, просто выполнив то, что вы уже делаете, за исключением того, что формат вашей даты неверен. Это должно быть что-то вроде:
txtDBirth.Text = DateTime.Now.ToString("MMM dd yyyy")
Напечатает:
09 октября 2011
Вы не можете изменить разметку автоматически, да это и не нужно, в любом случае. Вы используете элемент управления TextBox, а Text
свойство предназначено для установки значения внутри элемента управления.
ОБНОВЛЕНИЕ (после прочтения комментария Джона Сондерса):
Вы могли бы сделать:
<asp:TextBox runat="server" id="txtDBirth" />
О коде за:
Вы устанавливаете txtBirth.Text
из своих данных, а затем сравниваете:
If(txtDBirth.Text=DateTime.Now.ToString("MMM dd yyyy")) Then
txtDBirth.Text = "Change to something different"
End If
Комментарии:
1. Большое спасибо Icarus за исправление этого кода. Способ, которым бывший автор этого кода использует его сейчас, таков: Затем в их codebehind он использовал эту дату, чтобы определить, соблюдены ли определенные критерии. Затем, пару месяцев спустя, они вручную снова меняют эту дату, чтобы удалить критерии. Мы хотели бы обработать это таким образом, чтобы никому больше не нужно было изменять эту дату вручную.
2. @Kenny Я вижу. Что вы имеете в виду. Но должен быть способ определить, каким должно быть значение по умолчанию.