Client端Script的动态注册
来源:互联网 发布:淘宝app6.1.4 编辑:程序博客网 时间:2024/06/15 17:11
- 1,使用RegisterClientScriptInclude动态注册.js文件
- step1:准备javaScript文件
- function showName(username)
- {
- alert('您的姓名是:'+username);
- }
- step2:网页及控件配置
- 在网页中要添加的是Client端的控件,在用户输入姓名之后通过动态注册的javaScript文件Info.js中的 function
- showName 将TextBox显示出来:
- <%@ Page Language="C#" AutoEventWireup="true" CodeFile="PageRegisterClientScriptInclude.aspx.cs" Inherits="PageRegisterClientScriptInclude" %>
- <!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>
- 请输入姓名:<input id="txtUserName" type="text" />
- <input id="btnSubmit" type="button" value="确定" onclick="showName(txtUserName.value)"/>
- </div>
- </form>
- </body>
- </html>
- step3:动态注册javaScript文件
- 最后一道程序是将Info.js的javaScript文件动态注册到页面:
- public partial class PageRegisterClientScriptInclude : System.Web.UI.Page
- {
- protected void Page_Load(object sender, EventArgs e)
- {
-
-
- if (!ClientScript.IsClientScriptIncludeRegistered(this.GetType(), "myMessage"))
- {
-
- Page.ClientScript.RegisterClientScriptInclude("myMessage", "./Script/Info.js");
- }
- }
- }
- 2.使用RegisterClientScriptBlock动态注册javaScript指令区块.
- 本范例与上一个原理大致相同.通过RegisterClientScriptBlock方法可以动态建构javaScript指令,不像上一个范例所注册的是已存在的javaScript文件Info.js:
- public partial class PageRegisterClientScriptBlock : System.Web.UI.Page
- {
- protected void Page_Load(object sender, EventArgs e)
- {
-
- string info="";
- info += "function showName(username)";
- info += "{ alert('您的名字是:'+ username); }";
-
- if (!Page.ClientScript.IsClientScriptBlockRegistered(this.GetType(), "myName"))
- {
-
- Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "myName", info,true);
- }
- }
- }
- 3.使用RegisterStartUpScript动态注册javaScript指令
- RegisterStartUpScript通常只包含"执行一次"的javaScript,
- public partial class PageRegisterStartUpScript : System.Web.UI.Page
- {
- protected void Page_Load(object sender, EventArgs e)
- {
- string info = "<script>alert('欢迎光临DotNet开发圣殿!')</script>";
- if (!Page.ClientScript.IsStartupScriptRegistered("Welcome"))
- {
- Page.ClientScript.RegisterStartupScript(this.GetType(), "Welcome", info);
- }
- }
- }