博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
利用JQuery直接调用asp.net后台方法
阅读量:6387 次
发布时间:2019-06-23

本文共 5281 字,大约阅读时间需要 17 分钟。

利用JQuery的$.ajax()可以很方便的调用asp.net的后台方法。

[WebMethod]   命名空间

1、无参数的方法调用, 注意:1.方法一定要静态方法,而且要有[WebMethod]的声明

后台<C#>:

using System.Web.Script.Services;   [WebMethod]   public static string SayHello()   {        return "Hello Ajax!";   }

前台<JQuery>:

$(function() {       $("#btnOK").click(function() {           $.ajax({               //要用post方式               type: "Post",               //方法所在页面和方法名               url: "data.aspx/SayHello",               contentType: "application/json; charset=utf-8",               dataType: "json",               success: function(data) {                   //返回的数据用data.d获取内容                   alert(data.d);               },               error: function(err) {                   alert(err);               }           });           //禁用按钮的提交           return false;       });   });

2、带参数的方法调用

后台<C#>:

using System.Web.Script.Services;[WebMethod]public static string GetStr(string str, string str2){    return str + str2;}

前台<JQuery>:

$(function() {       $("#btnOK").click(function() {           $.ajax({               type: "Post",               url: "data.aspx/GetStr",               //方法传参的写法一定要对,str为形参的名字,str2为第二个形参的名字               data: "{'str':'我是','str2':'XXX'}",               contentType: "application/json; charset=utf-8",               dataType: "json",               success: function(data) {                   //返回的数据用data.d获取内容                     alert(data.d);               },               error: function(err) {                   alert(err);               }           });           //禁用按钮的提交           return false;       });   });

3、返回数组方法的调用

后台<C#>:

using System.Web.Script.Services;[WebMethod]public static List
GetArray(){ List
li = new List
(); for (int i = 0; i < 10; i++) li.Add(i + ""); return li;}

前台<JQuery>:

$(function() {       $("#btnOK").click(function() {           $.ajax({               type: "Post",               url: "data.aspx/GetArray",               contentType: "application/json; charset=utf-8",               dataType: "json",               success: function(data) {                   //插入前先清空ul                   $("#list").html("");                   //递归获取数据                   $(data.d).each(function() {                       //插入结果到li里面                       $("#list").append("
  • " + this + "
  • "); }); alert(data.d); }, error: function(err) { alert(err); } }); //禁用按钮的提交 return false; }); }); ///
    $(function() { $("#btnOK").click(function() { $.ajax({ type: "Post", url: "data.aspx/GetArray", contentType: "application/json; charset=utf-8", dataType: "json", success: function(data) { //插入前先清空ul $("#list").html(""); //递归获取数据 $(data.d).each(function() { //插入结果到li里面 $("#list").append("
  • " + this + "
  • "); }); alert(data.d); }, error: function(err) { alert(err); } }); //禁用按钮的提交 return false; });});

    4、返回Hashtable方法的调用

    后台<C#>:

    using System.Web.Script.Services;using System.Collections;[WebMethod]public static Hashtable GetHash(string key,string value){    Hashtable hs = new Hashtable();    hs.Add("www", "yahooooooo");    hs.Add(key, value);        return hs;}

    前台<JQuery>:

    $(function() {       $("#btnOK").click(function() {           $.ajax({               type: "Post",               url: "data.aspx/GetHash",               //记得加双引号 T_T               data: "{ 'key': 'haha', 'value': '哈哈!' }",               contentType: "application/json; charset=utf-8",               dataType: "json",               success: function(data) {                   alert("key: haha ==> "+data.d["haha"]+"\n key: www ==> "+data.d["www"]);               },               error: function(err) {                   alert(err + "err");               }           });           //禁用按钮的提交           return false;       });   });

    5、操作xml

    XMLtest.xml:view plaincopy to clipboardprint?
    1
    qwe
    2
    asd
    1
    qwe
    2
    asd

    前台<JQuery>:

    $(function() {       $("#btnOK").click(function() {           $.ajax({               url: "XMLtest.xml",               dataType: 'xml', //返回的类型为XML ,和前面的Json,不一样了               success: function(xml) {                   //清空list                   $("#list").html("");                   //查找xml元素                $(xml).find("data>item").each(function() {                       $("#list").append("
  • id:" + $(this).find("id").text() +"
  • "); $("#list").append("
  • Name:"+ $(this).find("name").text() + "
  • "); }) }, error: function(result, status) { //如果没有上面的捕获出错会执行这里的回调函数 alert(status); } }); //禁用按钮的提交 return false; }); });

    转载地址:http://ckdha.baihongyu.com/

    你可能感兴趣的文章
    Linux软件包安装与卸载
    查看>>
    centos5.x安装sphinx
    查看>>
    3分钟搭建Ant Design Pro前端开发环境( MyClouds的前端选型)
    查看>>
    Scala各种用法
    查看>>
    Linux系统常用命令(二)
    查看>>
    简单的工厂模式学习
    查看>>
    温习如何画E-R图
    查看>>
    eclispe注释模板
    查看>>
    Thymeleaf教程 (三) 创建一个多语言的首页
    查看>>
    OSChina 周六乱弹 ——你们猜狗的舌头有多长
    查看>>
    OSChina 周日乱弹 —— 爱丽丝爱吃京酱肉丝
    查看>>
    2018.11月微信小程序优质开源项目
    查看>>
    IOS 未来几年的认知
    查看>>
    解决中文乱码--加密
    查看>>
    浅析全民社交创业梦
    查看>>
    Java操纵MongoDB_1(环境设置)
    查看>>
    C#字符串操作--获取字符或字符串的位置、数量
    查看>>
    php - 字符串处理
    查看>>
    bulk collect 以及ref cursor使用
    查看>>
    男女都应该学会的潜规则(二)
    查看>>