首先需要先建立一个
网站,新建如下的一些文件,Web窗体(Default.
asp教程x)、JScript文件(ajax.js)、Web服务(SayHelloService.asmx)、Class类(Hello.cs)
(补充一点:需要添加一个Microsoft.Web.Preview.dll,在CSDN有的下载)
<补充>需要新建一个ScriptManager控件,为了进行ajax数据交互,局部刷新
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<补充>加入Preview.dll的作用就在这里,为的是让已习惯
asp.net教程后台编码的同胞们有似曾相识的感觉....
var btnSayHello;
var lblResult;
Sys.Application.add_init(onPageInit);
function OnFailded(error)
{
lblResult.set_text("调用失败。错误信息:"+error.get_message());
}function OnSucceeded(resultText)
{
lblResult.set_text(resultText);
}
function btnSayHello_onClick()
{
SayHelloService.SayHello(OnSucceeded,OnFailded);
}function onPageInit()
{
btnSayHello=new Sys.Preview.UI.Button($get("btnSayHello"));
btnSayHello.initialize();
lblResult=new Sys.Preview.UI.Label($get("result"));
lblResult.initialize();
btnSayHello.add_click(btnSayHello_onClick);
}
SayHelloService.cs文件的代码:
<补充>这个Web服务的类的作用在于为js文件与普通的类之间,构造一个“沟通本台”。
其实在基本的类中也可以做到这一点,但要在基本的类中加入【ScriptService】、【WebMethod】等关键字,在一定程度中“污染”基本类。
记得补充【ScriptService】、【WebMethod】等关键字,同时当你每写一个函数的时候,都要记得在前面加入【WebMethod】关键字。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.Script.Services;
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ScriptService]
[WebMethod]
public string SayHello()
{
Hello myHello = new Hello();
return myHello.SayHello();
}
}public class SayHelloService : System.Web.Services.WebService {
public SayHelloService () {
}
Hello的代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
public class Hello
{
public Hello()
{
}
public string SayHello()
{
return "Hello!Anna";
}
}