ASP.NET编程模型:RegisterStartupScript向页面注册脚本

复制代码
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default3.aspx.cs" Inherits="WebParts_Default3" %>

<%@ Register Src="SelectPro.ascx" TagName="SelectPro" TagPrefix="uc1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    
<title>无标题页</title>
</head>
<body>
    
<form id="form1" runat="server">
    
<div onclick='test()'>
        
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
        
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
        
<asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
        
<asp:TextBox ID="TextBox5" runat="server"></asp:TextBox>
    
</div>

    
<script type="text/javascript">
    
function test()
    {
    alert(
'<%= TextBox1.ClientID %>');
    
    }
    
    
    
</script>

    
</form>
</body>
</html>
复制代码

 

复制代码
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

public partial class WebParts_Default3 : System.Web.UI.Page
{
    
protected void Page_Load(object sender, EventArgs e)
    {
        Set1();
//或Set2();
    }

    
public void Set1()
    {
        
string script = "";
        
for (int i = 0; i < Page.Form.Controls.Count; i++)
        {
            
if (Page.Form.Controls[i] is TextBox)
            {
                TextBox txt 
= Page.Form.Controls[i] as TextBox;
                txt.Attributes.Add(
"onclick", txt.ClientID + "_Show()");
                txt.Style.Add(HtmlTextWriterStyle.BackgroundColor, 
"yellow");
                script 
+= "function " + txt.ClientID + "_Show(){alert('" + txt.ClientID + "');};";
            }
        }
        Page.ClientScript.RegisterStartupScript(
this.GetType(), "script""<script>" + script + "</script>");
    }

    
public void Set2()
    {
        
string script = "";
        
for (int i = 0; i < Page.Form.Controls.Count; i++)
        {
            
if (Page.Form.Controls[i] is TextBox)
            {
                TextBox txt 
= Page.Form.Controls[i] as TextBox;
                txt.Attributes.Add(
"onclick""Show('" + txt.ClientID + "')");
                txt.Style.Add(HtmlTextWriterStyle.BackgroundColor, 
"red");

                script 
= "function Show(id){alert(id);};";
            }
        }
        Page.ClientScript.RegisterStartupScript(
this.GetType(), "script""<script>" + script + "</script>");
    }
}
复制代码

 

 

posted @   Cat Qi  阅读(864)  评论(2编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示