[英]Setting Date Value selected on Date Picker
我正在尝试在asp.net网页上获取日期选择器。 我已经能够使用母版页运行相同的代码,并且可以正常工作,但是现在我正试图在没有母版寻呼机的情况下使其正常工作,并且我收到错误消息:错误:无法获取属性值'aspnetForm.ctl00_txtDOB':对象为null或未定义
在我的Default.aspx页上...
<script language="javascript" type="text/javascript">
function calendarPicker(strField) {
window.open('date_picker.aspx?field=' + strField, 'calendarPopup', 'width=250,height=190,resizable=yes');
}
<label>DOB:</label><asp:TextBox ID="txtDOB" runat="server"></asp:TextBox>
<img src="images/calendar.gif" alt="Pick To Date" onclick="calendarPicker('aspnetForm.ctl00_txtDOB');"/>
I already tried onclick="calendarPicker('txtDOB');"/>
My date_picker.aspx.cs
private void Calendar1_DayRender(object sender, System.Web.UI.WebControls.DayRenderEventArgs e)
{
// Clear the link from this day
e.Cell.Controls.Clear();
// Add the custom link
System.Web.UI.HtmlControls.HtmlGenericControl Link = new System.Web.UI.HtmlControls.HtmlGenericControl();
Link.TagName = "a";
Link.InnerText = e.Day.DayNumberText;
Link.Attributes.Add("href", String.Format("JavaScript:window.opener.document.{0}.value = \'{1:d}\'; window.close();", Request.QueryString["field"], e.Day.Date));
// By default, this will highlight today's date.
if (e.Day.IsSelected)
{
Link.Attributes.Add("style", this.Calendar1.SelectedDayStyle.ToString());
}
// Now add our custom link to the page
e.Cell.Controls.Add(Link);
}
尝试更改此:
onclick="calendarPicker('aspnetForm.ctl00_txtDOB');"
对此:
onclick="calendarPicker('<%=txtDOB.ClientID %>');"
我这样做可以使其工作:
添加表单[0] .... window.opener.document.forms [0]。{0} .value ..........
Link.Attributes.Add(“ href”,String.Format(“ JavaScript:window.opener.document.forms [0]。{0} .value = \\'{1:d} \\'; window.close(); “,Request.QueryString [” field“],e.Day.Date));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.