大家好,又见面了,我是你们的朋友全栈君。
今天用到scriptmanager,顺便整理一下。
—————————-网络资料—————————————————-
一.控件概述
ScriptManager控件包括在ASP.NET 2.0 AJAX Extensions中,它用来处理页面上的所有组件以及页面局部更新,生成相关的客户端代理脚本以便能够在JavaScript中访问Web Service,所有需要支持ASP.NET AJAX的ASP.NET页面上有且只能有一个ScriptManager控件。在ScriptManager控件中我们可以指定需要的脚本库,或者指定通过JS来调用的Web Service,还可以指定页面错误处理等。
资料中如实是说:
1, ScriptManager(脚本控制器)是asp.net ajax存在的基础.
2, 一个页面只允许有一个ScriptManager,并且放在其他ajax控件的前面.
3,ScriptManager掌管着客户端Ajax页的多有脚本,并在页面中注册Ajax类库,用来实现页面的局部更新和对Web服务的调用.
下面是scriptManager的结构:
下面介绍下ScriptManager的几个属性和一些子元素
a, EnablePartialRendering: (默认局部渲染)比较重要,用来表示此页面是否允许局部刷新(默认为true)
b, AllowCustomErrorsRedirect :当发生错误时候,是否导航到web.config中定义的错误页面,如果设置为false,则使用AsyncPostBackErrorMessage和OnAsyncPostBackError提示错误.
c, AsyncPostBackErrorMessage: 异步调用发生错误时的提示信息.
d, OnAsyncPostBackError: 异步调用发生错误时的事件
e, AsyncPostBackTimeOut: 异步调用的有效时间 默认为 90秒
f, AuthenticationService: 用来表示提供验证服务的路径.
g, ProfileService 表示提供个性化服务的路径
h, Scripts 对脚本的调用,可以恰套多个ScriptReference摸板对多个脚本文件的调用
i, Service 对服务的调用 也可以恰套多个ServiceReference摸板以实现多个服务的引用
———以下是自己做的例子—————————————————————-
前台页
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
function ReferenceServiceMethod1() {
WebServiceTest.HelloWorld(GetResult);
}
function GetResult(result) {
alert(result);
}
function ReferencSercviceMethod2() {
WebServiceTest.SayHelloWorld(document.getElementById("txtName").value, GetResult);
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<input type="text" id="txtName" />
<input type="button" value="带参数的web service方法调用" οnclick="ReferencSercviceMethod2()" />
<input type="button" value="不带参数的web service方法调用" οnclick="ReferenceServiceMethod1()" />
</div>
<asp:ScriptManager ID="ScriptManager1" runat="server">
<Services>
<asp:ServiceReference Path="WebServiceTest.asmx" />
</Services>
</asp:ScriptManager>
</form>
</body>
</html>
建立一个WebServiceTest.asmx文件代码为(
app_code下WebServiceTest.asmx.cs中
)
/// <summary>
///WebServiceTest 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
//这句一定要加上
[System.Web.Script.Services.ScriptService]
public class WebServiceTest : System.Web.Services.WebService
{
public WebServiceTest()
{
//如果使用设计的组件,请取消注释以下行
//InitializeComponent();
}
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
[WebMethod]
public string SayHelloWorld(string name)
{
return "Hello World " + name;
}
over!
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/158514.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...