0

我想在图像按钮的onclick和文本框“txtstartdate”的焦点上打开日历弹出窗口。请帮忙。

<asp:TextBox ID="txtStartDate" runat="server" Enabled="false" CssClass="dateBoxWidth TPRValue" Text='<%#DataBinder.Eval(Container.DataItem, "StartDate", "{0:ddd MMM dd, yyyy}")%>'></asp:TextBox>

<asp:ImageButton ID="imgBtnStartDate" runat="server" ImageUrl="~/Common/Images/Calendar.GIF" CausesValidation="false" ImageAlign="AbsMiddle" />

<ajax:CalendarExtender ID="StartDateCalendar" TargetControlID="txtStartDate" PopupButtonID="imgBtnStartDate" runat="server" Format="ddd MMM dd, yyyy" OnClientDateSelectionChanged="onStartDateChanged"></ajax:CalendarExtender>
4

1 回答 1

2

试试这个:

<asp:TextBox ID="txtStartDate" onFocus="javascript:document.getElementById('imgBtnStartDate').click();" runat="server" Enabled="false" CssClass="dateBoxWidth TPRValue" Text='<%#DataBinder.Eval(Container.DataItem, "StartDate", "{0:ddd MMM dd, yyyy}")%>'        ></asp:TextBox>

<asp:ImageButton ID="imgBtnStartDate" runat="server" ImageUrl="~/Common/Images/Calendar.GIF" CausesValidation="false" ImageAlign="AbsMiddle" />

<ajax:CalendarExtender ID="StartDateCalendar" TargetControlID="txtStartDate" PopupButtonID="imgBtnStartDate" runat="server" Format="ddd MMM dd, yyyy" OnClientDateSelectionChanged="onStartDateChanged"></ajax:CalendarExtender>

在 TextBox 控件中添加事件

onFocus="javascript:document.getElementById('imgBtnStartDate').click();"

希望这能解决...

如果您使用的是 jQuery,这个更好:

onFocus="javascript:$('#imgBtnStartDate').click();"
于 2012-04-20T14:32:53.160 回答