ajax 与 ScriptManager.RegisterStartupScript

ajax 与 ScriptManager.RegisterStartupScript

Ajax,cs中运行某段js代码方式可以是:
Page.ClientScript.RegisterStartupScript(Page.GetType(), "", "<script>window.open('default2.asp教程x')</script>");
如果页面中使用了Ajax ,则上述代码即使执行也无效果。应对这种情况我们通常采用:
ScriptManager.RegisterStartupScript(this.Button1, this.GetType(), "alertScript", "window.open('default2.aspx');", true);
其中第一个参数为要注册脚本的控件ID,试了一下,只要是本页面的就行。
第二个参数为注册脚本控件类型,是控件还是this的GetType()都可以,typeOf(string)也没问题.
第三个脚本函数的名字,随便起。
第四个是脚本内容。
第五个是标明是否再添加脚本标签,如果第四个参数里包含了<script></script>标签,此处则为false,否则为true。
注意:aspx代码是这样的
<div>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:TextBox runat="server" ID="TextBox2" >
</asp:TextBox>
<asp:Button runat="server" Text="Button" ID="Button1" nClick="Button1_Click" />
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="Button1" />
</Triggers>
</asp:UpdatePanel>
</div>
我在Button1_Click的事件里注册脚本,一定要加红色的部分,否则总是提示不能parse什么东西

时间: 2024-09-12 03:30:32

ajax 与 ScriptManager.RegisterStartupScript的相关文章

ScriptManager.RegisterStartupScript()方法在ajax页面无效的解决方法_实用技巧

如果不用Ajax,cs中运行某段js代码方式可以是: Page.ClientScript.RegisterStartupScript(Page.GetType(), "", "<script>window.open('default2.aspx')</script>"); 如果页面中使用了Ajax ,则上述代码即使执行也无效果.应对这种情况我们通常采用: ScriptManager.RegisterStartupScript(this.But

ScriptManager.RegisterStartupScript()方法

如果页面中不用Ajax cs中运行某段js代码方式可以是:Page.ClientScript.RegisterStartupScript(Page.GetType(), "", "<script>window.open('default2.aspx')</script>"); 如果页面中使用了Ajax 则上述代码即使执行也无效果.对这种情况我们通常采用:ScriptManager.RegisterStartupScript(UpdatePan

注册起动脚本,ASP.NET AJAX的一项重要功能!

ajax|asp.net|脚本     最近的项目中一直在使用Atlas July CTP,自从Atlas正式更名后,连续推出了Beta和Beta2两个版本,但是我一直在观望,原因就是Beta版本不稳定而且升级太麻烦了.一日偶然看到了杨丹的这篇随笔,突然发现原来ScriptManager可以注册在客户端部分刷新的UpdatePanel中注册启动后执行的javascript!这可是困扰了我很长时间的一个问题!这样不但可以在使用UpdatePanel的情况下使用Javascript弹出对话框,也可以

注册起动脚本,ASP.NET AJAX的一项重要功能

ajax|asp.net|脚本    最近的项目中一直在使用Atlas July CTP,自从Atlas正式更名后,连续推出了Beta和Beta2两个版本,但是我一直在观望,原因就是Beta版本不稳定而且升级太麻烦了.一日偶然看到了杨丹的这篇随笔,突然发现原来ScriptManager可以注册在客户端部分刷新的UpdatePanel中注册启动后执行的javascript!这可是困扰了我很长时间的一个问题!这样不但可以在使用UpdatePanel的情况下使用Javascript弹出对话框,也可以在

asp.net ajax 使用updatepanel进行更新后的提示

ajax|asp.net 想实现这样一个简单的功能,却折腾了半天.原因是第一次使用asp.net Ajax,本来是不想使用的MS的.却想看看他的框架如何.      使用Response.write (js) 会出错.找了一些文档来看,原来要使用ScriptManager的静态方法 RegisterStartupScript 来实现调用.不知为什么实例类型没有提供这种方法.害得我花了很多的时间.       ScriptManager.RegisterStartupScript(this.Upd

基于.NET三种Ajax技术的运用:原生js、ASP.NET Ajax和.NET回调技术

在进行ASP.NET开发时,我们需要用越来越多的Ajax技术,以丰富用户交互界面,不断提高用户体验. 第一种方式是我们亲自手动编写Javascript代码实现,关于这个方式我前面有一篇博文 <跟我一起创 建一个简单的javascript ajax对象>介绍过了.具体实现在此不再赘述.那么使用这样的方式的一大好处是 使用灵活,便于我们自己把握整个异步通信的过程,但是要求开发人员具备较好的Javascript基础,另外一点 就是要创建编写新的Handler.ashx文件或者一个ASPX文件. 微软

注册起动脚本:ASP.NET AJAX的一项重要功能!

最近的项目中一直在使用Atlas July CTP,自从Atlas正式更名后,连续推出了Beta和Beta2两个版本,但是我一直在观望,原因就是Beta版本不稳定而且升级太麻烦了.一日偶然看到了杨丹的这篇随笔,突然发现原来ScriptManager可以注册在客户端部分刷新的UpdatePanel中注册启动后执行的javascript!这可是困扰了我很长时间的一个问题!这样不但可以在使用UpdatePanel的情况下使用Javascript弹出对话框,也可以在开发使用Javascript脚本的服务

ajax中如何重新调用JS文件,SOS!

问题描述 前台页面<%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="Index.aspx.cs"Inherits="Maticsoft.Web.Admin.WSNC_Sensor.Index"ContentType="text/html"ResponseEncoding="gb2312"%><%@Register

疑难问题, window.close()不起作用?!(ajax)

问题描述 使用ajax,页面是一个窗口A的弹出窗口B,使用B中的scriptmananger,调用页面B的一个javascript函数进行刷新父窗口A,和关闭自身B的作用,但是不知道为什么不起作用??请求帮助,谢谢!! 解决方案 解决方案二:请把问题说详细.解决方案三:up解决方案四:_DoPostBack解决方案五:try:window.opener=null;window.close();然后确定看看window.close()代码有没有执行.解决方案六:try:window.opener=