我有一个非常简单的 asp .net 用户控件,它有一个提交按钮来隐藏日历服务器端控件。这是代码:
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="WebUserControl1.ascx.cs"
Inherits="WebApplication5.WebUserControl1" %>
<script type="text/javascript" src="scripts/jquery-1.4.1.min.js"></script>
<script language="javascript" type="text/javascript">
// <![CDATA[
function Submit1_onclick() {
alert("1");
$('#<%=Calendar1.ClientID%>').hide();
alert("2");
}
// ]]>
</script>
<input id="Submit1" type="submit" value="submit" onclick="return Submit1_onclick()" />
<asp:Calendar ID="Calendar1" runat="server"></asp:Calendar>
现在我将此用户控件包含在 asp .net 应用程序的默认页面中。这是默认页面的代码:
<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
CodeBehind="Default.aspx.cs" Inherits="WebApplication5._Default" %>
<%@ Register TagPrefix="CP" TagName="TitleBar" Src="WebUserControl1.ascx" %>
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<CP:TitleBar runat="server" />
</asp:Content>
我可以在页面中看到日历控件,当我单击提交时,它确实会隐藏一会儿,然后重新出现。如果我在 default.aspx 中编写所有代码,它会完美运行。我知道它与页面生命周期有关,但不知道是什么?请帮忙!!还有什么应该是写这个的正确方法......