[英]how to show value of textbox type=date asp.net
我有一個屬性type="date"
的文本框。 我能夠在回溯代碼中檢索值,但是當我嘗試分配一個值時,會顯示占位符"mm/dd/yyyy"
。
當我查看標記時,預期值就在那里 - "value='01/01/1991'"
。 我認為這與 JavaScript 覆蓋了該值有關。
關於我如何解決這個問題的任何建議?
編輯:對不起,忘了包括標記和代碼
所以我的標記是
<asp:TextBox ID="txtBirthdate" runat="server" class="form-control input-sm" type="date" onkeypress="handleEnter(event)" />
而 c# 是
txtBirthdate.Text = usr.BirthDate.ToString("MM/dd/yyyy");
結果標記是
<input name="ctl00$ctl00$ctl00$ctl00$Body$Body$Body$Body$txtBirthdate" value="01/20/1991" id="ctl00_ctl00_ctl00_ctl00_Body_Body_Body_Body_txtBirthdate" class="form-control input-sm" type="date" onkeypress="handleEnter(event)">
如您所見,該值已分配。
我相信這只會發生在 Chrome 中。 它要求賦值為“yyyy-MM-dd”格式。 試試你的 C#
txtBirthdate.Text = usr.BirthDate.ToString("yyyy-MM-dd");
這應該顯示正確的值(並且它不會影響顯示的格式)。
如果將在其他瀏覽器中以這種格式顯示。 您可能想做一些瀏覽器檢測,例如
if (Request.Browser.Browser == "Chrome")
{
txtBirthdate.Text = usr.BirthDate.ToString("yyyy-MM-dd");
} else {
txtBirthdate.Text = usr.BirthDate.ToString("MM/dd/yyyy");
}
但也許更復雜的東西
對我來說這有效:
txtBirthdate.Text = Convert.ToDateTime(TablaHabitacion.Rows[fila].Cells[6].Text).ToString("yyyy-MM-dd");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.