62,025
社区成员
发帖
与我相关
我的任务
分享
//MyUserControl.ascx
protected void Page_Load(object sender, EventArgs e)
{
ScriptManager.RegisterClientScriptInclude(this, GetType(), "ShowMessageScript", ResolveClientUrl("~/Scripts/JScript.js"));
}
<script type="text/javascript">
function showMessage() {
var s = document.getElementById('<%= TextBox1.ClientID %>').value;
alert(s);
}
</script>
<asp:TextBox runat="server" ID="TextBox1" />
<input type="button" value="弹出消息框" onclick="showMessage();" />
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="MyUserControl.ascx.cs" Inherits="MyUserControl" %>
<script type="text/javascript">
function showMessage(s) {
alert(s);
}
</script>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<input type="button" value="用户控件内的按钮" onclick="showMessage($get('<%= TextBox1.ClientID %>').value);" />
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<uc1:MyUserControl ID="MyUserControl1" runat="server" />
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Button ID="ButtonLoadUserControl" runat="server" Text="动态加载用户控件"
onclick="ButtonLoadUserControl_Click" />
</ContentTemplate>
</asp:UpdatePanel>
protected void ButtonLoadUserControl_Click(object sender, EventArgs e)
{
if (UpdatePanel1.ContentTemplateContainer.FindControl("UserControlID") == null)
{
Control c = Page.LoadControl("MyUserControl.ascx");
c.ID = "UserControlID";
UpdatePanel1.ContentTemplateContainer.Controls.Add(c);
}
}
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="MyUserControl.ascx.cs" Inherits="MyUserControl" %>
<%--MyUserControl.ascx--%>
<asp:ScriptManagerProxy ID="ScriptManagerProxy1" runat="server">
<Scripts>
<asp:ScriptReference Path="~/Scripts/JScript.js" />
</Scripts>
</asp:ScriptManagerProxy>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<input type="button" value="用户控件内的" onclick="showMessage($get('<%= TextBox1.ClientID %>').value);" />
function showMessage(s) {
alert(s);
}
if (Sys && Sys.Application) { Sys.Application.notifyScriptLoaded(); }
//Scripts/JScript.js
function showMessage(s) {
alert(s); //简单接收一字符串, 用alert()显示。
}
// Default.aspx.cs
protected void Page_Load(object sender, EventArgs e)
{ // 其实没必要动态注册,这里只是故意用一下动态注册。
if (!Page.ClientScript.IsClientScriptIncludeRegistered(this.GetType(), "myMessage"))
{
Page.ClientScript.RegisterClientScriptInclude(this.GetType(), "myMessage", ResolveClientUrl("~/Scripts/JScript.js"));
}
}
<%--Default.aspx--%>
<asp:TextBox runat="server" ID="TextBox1" />
<input type="button" value="弹出消息框" onclick="showMessage(document.getElementById('<%= TextBox1.ClientID %>').value);" />