用juery的ajax方法调用aspx.cs页面中的webmethod方法示例

 更新时间:2013年07月10日 17:32:11   作者:  
juery的ajax调用aspx.cs页面中的webmethod方法:首先在 aspx.cs文件里建一个公开的静态方法,然后加上WebMethod属性,具体实现如下,感兴趣的朋友可以参考下哈,希望对大家有所帮助
首先在 aspx.cs文件里建一个公开的静态方法,然后加上WebMethod属性。
如:
[WebMethod]
public static string GetUserName()
{
//......
}
  如果要在这个方法里操作session,那还得将WebMethod的EnableSession 属性设为true 。即:
[WebMethod(EnableSession = true)]//或[WebMethod(true)]
public static string GetUserName()
{
//......
}
 然后我们就写ajax程序来访问这个程序,我们就用jQuery吧。
复制代码 代码如下:

$.ajax({
type: "POST",
contentType: "application/json",
url: "WebForm2.aspx/GetUserName",
data: "{}",
dataType: "json",
success: function(){.......}
});

type:请求的类型,这里必须用post 。WebMethod方法只接受post类型的请求。
contentType:发送信息至服务器时内容编码类型。我们这里一定要用 application/json 。
url:请求的服务器端处理程序的路径,格式为"文件名(含后缀)/方法名"
data:参 数列表。注意,这里的参数一定要是json格式的字符串,记住是字符串格式,如:"{aa:11,bb:22,cc:33 , ...}"。如果你写的不是字符串,那jquery会把它实序列化成字符串,那么在服务器端接受到的就不是json格式了,且不能为空,即使没有参数也要 写成"{}",如上例。
很多人不成功,原因就在这里。
dataType:服务器返回的数据类型。必须是json,其他的都无效。因为 webservice 是一json格式返回数据的,其形式为:{"d":"......."}。
success:请求成功后的回调函数。你 可以在这里对返回的数据做任意处理。
下面给个ajax请求自身页面的例子给你测试。。。
test.aspx
XML/HTML code
复制代码 代码如下:

<%@ Page language="C#"%>
<script runat="server">
protected void Page_Load(object sender,EventArgs e){
Response.Charset="gb2312";
if(Request.Form["method"]=="Test")Test();
else if(Request.Form["method"]=="Test1")Test1();
else if(Request.Form["method"]=="Test2")Test2();
Response.Write("一般请求<br/>");
}
public void Test()
{
Response.Write("执行Test方法"+DateTime.Now);
Response.End();//停止其他输出
}
public void Test1()
{
Response.Write("执行Test1方法"+DateTime.Now);
Response.End();//停止其他输出
}
public void Test2()
{
Response.Write("执行Test2方法"+DateTime.Now);
Response.End();//停止其他输出
}
</script>
<!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">
<meta http-equiv="content-type" content="text/html;charset=gb2312" />
<script type="text/javascript" src="jquery.js"></script>
</head>
<body>
<input type="button" value="调用Test" onclick="CallMethod('Test')"/><input type="button" value="调用Test1"
onclick="CallMethod('Test1')"/><input type="button" value="调用Test2" onclick="CallMethod('Test2')"/>
<script type="text/javascript">
function CallMethod(method){
$.ajax(
{
type: "POST",
url: "test.aspx",
data:{method:method},
success:function(msg){alert(msg);},
error: function(){alert('出错了');}
}
)
}
$(document).ready(function(){
$.ajax(
{
type: "POST",
url: "test.aspx",
data:{method:"Test"},
success:function(msg){alert("$(document).ready执行方法Test返回结果\n\n\n"+msg);},
error: function(){alert('出错了');}
}
);
})
</script>
</body>
</html>

相关文章

  • AJAX请求是否真的不安全?谈一谈Web安全与AJAX的关系

    AJAX请求是否真的不安全?谈一谈Web安全与AJAX的关系

    Ajax中没有固有的安全漏洞,但是对该技术向量的适配显著地改变了网络应用的开发途径以及方法论。AJAX请求的安全性是大家经常会谈论的一个话题,AJAX请求是否真的不安全?下面这篇文章就来给大家详细谈一谈Web安全与AJAX关系的相关资料,需要的朋友可以参考下。
    2018-01-01
  • AJAX 支持搜索引擎问题分析

    AJAX 支持搜索引擎问题分析

    AJAX是利用浏览器的两个内置对象实现了,异步传输,说白了,页面不刷新对后台请求功能,现在市面上有很多AJAX框架,我就不一一列举了。
    2009-02-02
  • layui的checbox在Ajax局部刷新下的设置方法

    layui的checbox在Ajax局部刷新下的设置方法

    今天小编就为大家分享一篇layui的checbox在Ajax局部刷新下的设置方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-08-08
  • 简单实体类和xml文件的相互转换方法

    简单实体类和xml文件的相互转换方法

    下面小编就为大家带来一篇简单实体类和xml文件的相互转换方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • Ajax与JSON的一些学习总结

    Ajax与JSON的一些学习总结

    Ajax技术的核心是XMLHttpRequest对象(简称XHR),可以通过使用XHR对象获取到服务器的数据,然后再通过DOM将数据插入到页面中呈现。虽然名字中包含XML,但Ajax通讯与数据格式无关,所以我们的数据格式可以是XML或JSON等格式
    2012-08-08
  • 利用AJAX实现鼠标悬浮获取值的代码

    利用AJAX实现鼠标悬浮获取值的代码

    ajax实现将鼠标放到图标上,下方会显示和该图有关的信息
    2009-12-12
  • Ajax异步(请求)提交类 支持跨域

    Ajax异步(请求)提交类 支持跨域

    支持跨域的Ajax异步(请求)提交类
    2009-07-07
  • Ajax修改数据即时显示篇实现代码

    Ajax修改数据即时显示篇实现代码

    上一篇我们讲了如何使用ajax向数据库添加数据,今天我们要大家学习的课程是:使用ajax修改数据库数据,并在客户网页立即显示新的内容.当然在修改的过程中同样不会有刷新网页的情况发生!
    2010-10-10
  • AJAX技术基础介绍

    AJAX技术基础介绍

    AJAX技术基础介绍...
    2007-03-03
  • 也写一个Ajax.Request类附代码

    也写一个Ajax.Request类附代码

    也写一个Ajax.Request类附代码...
    2007-08-08

最新评论