ASP.NET AJAX调用WebService
如何在客户端直接调用WebService中的方法?
这里结合经验自己写一写
1.首先新建一个 ASP.NET AJAX-Enabled Web Site,这样系统为我们自动配置好了环境,这主要体现在Web.config这个文件上,如果已有网站不是ASP.NET AJAX-Enabled Web Site也可以对照修改下Web.config,也可以达到相同的效果。
2.新建一个web服务,WebService.asmx,在WebService.cs需要添加System.Web.Script.Services;这个命名空间:
using System.Web.Script.Services;
然后给WebService 类添加[ScriptService]属性这里先说步骤,后面说原理,然后给我们需要调用的方法加上
[WebMethod]属性
3.新建一个JScript文件,JScript.js,里面用来响应界面事件处理回调方法返回的数据
4.新建一个页面Default.aspx,如果是ASP.NET AJAX-Enabled Web Site页面上会自动添加ScriptManager控件,如果不是只要手工拖上去一个,然后给ScriptManager添加Script节点,这个节点用来指定要使用的js文件
<Scripts><asp:ScriptReference Path="~/JScript.js" /></Scripts>
再给ScriptManager添加Services节点,这个节点用来指定要使用的WebService
<Services><asp:ServiceReference Path="~/WebService.asmx" /></Services>
这些工作完成后只要在界面上某个控件或者某个地方调用我们的js方法就可以了。
说的是调用本地的WebService,如果是调用网上的WebService,原理也是一样,不过需要添加点东西,就拿“一些常用的WebServices”中的第一个WebService来说吧,天气预报Web服务,在网站上添加web引用,
在url地址中填入地址服务地址,前往,然后添加引用就可以了,其它处理和本地一样。
贴一下代码,包括本地的web服务和远程web服务
I.Default.aspx代码:
<html xmlns="[color=#000000]http://www.w3.org/1999/xhtml[/color]">
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true" >
<Scripts>
相关文档:
最近网上提的很多的一个新概念就是 AJAX 了, 那么, AJAX 是什么呢? 以下内容引用网上资料:
AJAX全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。它有机地包含了以下几种技术:
Ajax(Asynchronous JavaScript + XML)的定义
基于 web标准(sta ......
在Web.config文件的 <system.web></system.web>这两个节点中间插入需要映射的URL
<urlMappings enabled="true">
<add url="~/用户要访问的页面.aspx" mappedUrl="~/要重定向到的页面.aspx"/>
</urlMappings> ......
ASP.NET程序中常用的三十三种代码
1. 打开新的窗口并传送参数:
传送参数:
response.write("<script>window.open(’*.aspx?id="+this.DropDownList1.SelectIndex+"&id1="+...+"’)</script>")
接收参数:
string a = Request.QueryString("id");
string& ......