1.先说一下ScriptManager控件吧,用过Ajax的都知道他是什么了就不用我多说了吧呵呵!!!
ClientScriptManager csm = this.ClientScript;
csm.RegisterStartupScript(this.GetType(), "sufei", "你好");
这两句可以在当前控件的下面输出一个你好,呵呵,我建议大家以后都有这种方式做,不要再用Response.Write()
它只能用在方法里,"你好"的地方 也可以写成Script代码,不用加头但是呢要在后面加一个对数true
看这个吧 
csm.RegisterStartupScript(this.GetType(), "sufei", "alert('苏飞你好啊fdfd')", true);
csm.RegisterStartupScript(this.GetType(), "sufei", " document.write ('你好可以弹出的啊!!!')", true);

下面是Aspx源里的代码,大家复制就可以了

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ScriptManager.aspx.cs" Inherits="ClientScriptManager_ScriptManager" %>

<!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>苏飞—ScriptManager</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <!-- AllowCustomErrorsRedirect="false"表示在发生错误时不按Web。Config里家配制的转到相应的错误界面当然True就是是了,也是默认的-->
        <asp:ScriptManager ID="ScriptManager1" runat="server" AllowCustomErrorsRedirect="false">
        </asp:ScriptManager>
        <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode ="Conditional">
        <ContentTemplate>
        <%=DateTime .Now %>
          <asp:Button ID="Button1" runat="server" Text="第一个时间" οnclick="Button1_Click"  />
        </ContentTemplate>
        </asp:UpdatePanel>
        <hr />
        <%--在这里是不会弹出对话框的,因为只有UpdatePanel刷新时才会取得值--%>
          <asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode ="Conditional" >
        <ContentTemplate>
        <%=DateTime .Now %>
           <asp:Button ID="Button2" runat="server" Text="第二个时间"
                οnclick="Button2_Click"  />
        </ContentTemplate>
        </asp:UpdatePanel>
        <hr/>
        <asp:Button ID="Button3" runat="server" Text="刷新所有" οnclick="Button3_Click" />
    </div>
    </form>
</body>
</html>

CS下的代码

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
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;
using System.Xml.Linq;

public partial class ClientScriptManager_ScriptManager : System.Web.UI.Page
{
    /// <summary>
    /// 苏飞 2009 03 11
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    //第一个UpdatePanel
    protected void Button1_Click(object sender, EventArgs e)
    {
        //要注册代码的控件是UpdatePanel1
        ScriptManager.RegisterStartupScript(this.UpdatePanel1, this.GetType(), "sufei1", "alert(111)", true);
        //要注册代码的控件是UpdatePanel2
        ScriptManager.RegisterStartupScript(this.UpdatePanel2, this.GetType(), "sufei2", "alert(222)", true);
        //要注册代码的控件是Page下面的代码 不管UpdatePanel会不会刷新都会输出
        //ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "sufei3", "alert(111)", true);
    }

//第二个UpdatePanel
    protected void Button2_Click(object sender, EventArgs e)
    {
        //要注册代码的控件是UpdatePanel1
        ScriptManager.RegisterStartupScript(this.UpdatePanel1, this.GetType(), "sufei3", "alert(111)", true);
        //要注册代码的控件是UpdatePanel2
        ScriptManager.RegisterStartupScript(this.UpdatePanel2, this.GetType(), "sufei4", "alert(222)", true);
        //throw new Exception("呵呵");
    }
    protected void Button3_Click(object sender, EventArgs e)
    {
        throw new Exception("呵呵");
    }
}

其实怎么说呢,看到这里ClientScriptManager和ScriptManager基本上没有什么区别

但看只是前者是一个控件

ClientScriptManager给出一点代码大家看一下有什么不同吧

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
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;
using System.Xml.Linq;

public partial class RequiredFieldValidator_Default : System.Web.UI.Page
{
    /// <summary>
    /// 苏飞 2009 03 11
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>

/*禁止使用Response.Write()方法,因为它会破坏页面的标准(会出现在页面的上方)
     * 破坏了Asp.Net的模型,所有建议大家都不要使用
     * 我们有强大的Page,Control模型就没有必要再用Response.Write()这样的方法,
     * 如果你是一个好的程序员一个负责的程序员您就不要用这个方法
     * 用下面我写的方法来完成 ClientScriptManager csm = this.ClientScript;只能在方法里不能写在类的上方
     * //Response.Write("<script>alert('"+TextBox1 .Text .ToString ().Trim ()+"')</script>");
     */
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            //得到一个ClientScriptManager对象
            ClientScriptManager csm = this.ClientScript;
            csm.RegisterOnSubmitStatement(this.GetType(), "sufei1", "return window.confirm('你真的要提交界面吗');");
        }
    }

//添加数组
    protected void Button1_Click(object sender, EventArgs e)
    {
        //得到一个ClientScriptManager对象
        ClientScriptManager csm = this.ClientScript;
        //这个方法可以在前台注册一个var aa =  new Array(4ghg,2,3);数组
        csm.RegisterArrayDeclaration("aa", "4ghg,2,3");
    }

//输出一个提示信息
    protected void Button2_Click(object sender, EventArgs e)
    {
        //得到一个ClientScriptManager对象
        ClientScriptManager csm = this.ClientScript;
        // 输出一个提示信息啊后一个参数的意思是是否自动添加JS头
        csm.RegisterClientScriptBlock(this.GetType(), "提示信息", "alert('苏飞你好啊')", true);
        //出现的位置不同上面的是在页面上方显示,而这个是在当前控件的下面显示
        csm.RegisterStartupScript(this.GetType(), "sufei", "alert('苏飞你好啊fdfd')", true);
        csm.RegisterStartupScript(this.GetType(), "sufei", " document.write ('fdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfdfd')", true);
    }

//导入一个文件
    protected void Button3_Click(object sender, EventArgs e)
    {
        //得到一个ClientScriptManager对象
        ClientScriptManager csm = this.ClientScript;
        csm.RegisterClientScriptInclude("sufei", "../App_Themes/personnel_Css/forum.css");
    }

//为一个控件添加一个属性
    protected void Button4_Click(object sender, EventArgs e)
    {
        //得到一个ClientScriptManager对象
        ClientScriptManager csm = this.ClientScript;
        csm.RegisterExpandoAttribute(this.Button4.ClientID, "sufei", "苏飞");
        //同时注册一个隐藏的值
        //csm.RegisterHiddenField("kdfjkdfjkdfjlsjfl", "fdklfjldfldkf");

}
}

ScriptManager和ClientScriptManager相关推荐

  1. Page.ClientScript、ClientScript、ScriptManager、ClientScriptManager等的详细解说

    在 .aspx.cs页面中,输入这四个东西:Page.ClientScript.ClientScript.ScriptManager.ClientScriptManager,均会出提示,表示它们均可用 ...

  2. ASP.NET之ScriptManager和ClientScriptManager

    ClientScriptManager方法 (1)RegisterClientScriptBlock方法 向页的顶部添加一个脚本块.以字符串形式创建脚本,然后将其传递给方法,方法再将脚本添加到页中.可 ...

  3. ScriptManager ClientScriptManager

    ScriptManager & ClientScriptManager 同属于 System.Web.UI 命名空间下的类.并提供了类似的功能:注册脚本库和脚本文件. MSDN 的 Scrip ...

  4. ScriptManager和ClientScript的区别

    ClientScript获取用于管理脚本.注册脚本和向页面添加脚本的ClientScriptManager对象. ScriptManager.RegisterStartupScript方法和Clien ...

  5. html script写布局,scriptmanager

    asp.net中ScriptManager是做什么用的?? 功能跟Page上的ClientScript差不多,不过主要是用来支持ASP.NET Ajax Framework的,你可以用ScriptMa ...

  6. ScriptManager 帮助您实现 Web 应用程序的 AJAX 功能

    本文讨论: ScriptManager 在 ASP.NET AJAX 中的作用 ScriptManager 的隐式使用和显式使用 ASP.NET AJAX 对 Web 服务的支持 ASP.NET AJ ...

  7. (转)ScriptManager.RegisterStartupScript方法和Page.ClientScript.RegisterStartupScript() 方法...

    ScriptManager.RegisterStartupScript方法 如果页面中不用Ajax,cs中运行某段js代码方式可以是: Page.ClientScript.RegisterStartu ...

  8. 小试 ScriptManager

    1 概述 ScriptManager 控件管理用于 Microsoft ASP.NET AJAX 页面的客户端脚本.默认情况下,ScriptManager 控件将 Microsoft AJAX 库的脚 ...

  9. asp:ScriptManager

    概述 ScriptManager 控件管理用于 Microsoft ASP.NET AJAX 页面的客户端脚本.默认情况下,ScriptManager 控件将 Microsoft AJAX 库的脚本与 ...

最新文章

  1. 用python画钢铁侠_用自动铅笔素描画钢铁侠盔甲
  2. 创建调用查询删除存储过程语法
  3. socket通信的环形缓冲
  4. JIT的Profile神器JITWatch
  5. Linux Bond 技术学习资料
  6. Python3之对象垃圾收集机制浅析
  7. 深入理解Java反射+动态代理,java开发面试笔试题
  8. C#解析json和xml数据
  9. fullPage最后一屏自适应
  10. vector的基础使用
  11. pythonflask接口开发处理多线程请求_flask是如何处理多个访问请求的?
  12. Json对象与Json字符串互转(四种转换方式)
  13. 【爬虫】使用八爪鱼爬行百度地图美食店数据
  14. 精选1000个机械原理动图
  15. 双月数据生成及其常见算法(二)
  16. CS231n assignment1 KNN部分用到的函数
  17. 微信云服务器发长视频朋友圈,今天才知道,微信朋友圈还能发5分钟长视频,超简单,一看就会...
  18. 视频加背景图片的方法,多个视频设置为相同的背景图
  19. sx html5编辑器,SX HTML5全栈可视编辑器
  20. 这两个月——我的学习Python学习之路

热门文章

  1. Fedora 22 Linux 系统将于 7月 19日停止支持
  2. 谈谈如何构建技术部门的知识库
  3. aix Mysql-Rpm puppet puppetAgent
  4. PHP特级课视频教程_第三十四集 Mongodb性能优化_李强强
  5. Vue Cli3 项目 vue.config.js 配置
  6. 一行命令快速安装Kubernetes(V1.18)高可用集群
  7. 面试精讲之面试考点及大厂真题 - 分布式专栏 19 系统中的降级熔断设计
  8. java异常处理简介_【自学java】异常处理简介
  9. egg框架访问 Mysql 数据库 egg-mysql 增删改查
  10. 14.面向对象-----UML类图