我有一个asp日历,该日历可以正常工作,但是当我添加一个asp按钮以提交文本框值的形式时,日历仅显示当前月份,上一个和下个月的按钮不起作用。
<form id="form1" runat="server">
<div>
<asp:Calendar ID="cal2" runat="server" Width="50%" DayField="Date" OnDayRender="Calendar1_DayRender"
BackColor="Orange" NextMonthText="Next" PrevMonthText="Prev" OnVisibleMonthChanged="Calendar1_VisibleMonthChanged" >
<DayStyle CssClass="days" VerticalAlign="Top" Font-Name="Arial" Width="100px" Height="100px" BackColor="lightYellow" />
<TodayDayStyle BackColor="Orange" />
<OtherMonthDayStyle BackColor="LightGray" ForeColor="DarkGray"/>
</asp:Calendar>
</div>
<asp:Button ID="submit" CssClass="login" runat="server" Text="Submit" OnClick="Submit_click" />
</form>
我有一些文本框已发回到服务器端,为此我需要使用asp按钮,如何防止它禁用日历功能? 预先感谢
答案 0 :(得分:2)
问题出在您按钮的名称(ID)。日历组件使用内部(javascript)调用form.submit(),引入具有此ID的按钮可中断该调用。
示例修复程序:
<asp:Button ID="MySubmit" CssClass="login" runat="server" Text="Submit" OnClick="Submit_click" />
(这不是Calendar组件所独有的,除非您确切知道自己在做什么,否则通常不应在ASP.NET中将按钮命名为“ submit”)