利用JQuery直接调用asp.net后台的简单方法


Posted in Javascript onOctober 27, 2016

利用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<string>
 GetArray()
{
  List<string>
 li = new List<string>();
 
  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("<li>" +
this +
"</li>"); 
        }); 
 
        alert(data.d); 
      }, 
      error:
function(err)
 {  
        alert(err); 
      } 
    }); 
 
    //禁用按钮的提交 
    return false; 
  }); 
});
///
 <reference path="jquery-1.4.2-vsdoc.js"/>
$(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("<li>" +
this +
"</li>");
        });
 
        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?
<?xml version="1.0"
 encoding="utf-8" ?> 
<data>
<item>
  <id>1</id>
  <name>qwe</name>
</item>
<item>
  <id>2</id>
  <name>asd</name>
</item>
</data>
<?xml version="1.0"
 encoding="utf-8" ?>
<data>
<item>
  <id>1</id>
  <name>qwe</name>
</item>
<item>
  <id>2</id>
  <name>asd</name>
</item>
</data>

前台<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("<li>id:" +
 $(this).find("id").text()
 +"</li>"); 
          $("#list").append("<li>Name:"+
 $(this).find("name").text()
 + "</li>"); 
        }) 
      }, 
      error:
function(result,
 status) { //如果没有上面的捕获出错会执行这里的回调函数 
        alert(status); 
      } 
    }); 
 
    //禁用按钮的提交 
    return false; 
  }); 
});

以上就是小编为大家带来的利用JQuery直接调用asp.net后台的简单方法全部内容了,希望大家多多支持三水点靠木~

Javascript 相关文章推荐
AJAX分页的代码(后台asp.net)
Feb 14 Javascript
js获取select选中的option的text示例代码
Dec 19 Javascript
利用js读取动态网站从服务器端返回的数据
Feb 10 Javascript
javascript获取dom的下一个节点方法
Sep 05 Javascript
Javascript编写2048小游戏
Jul 07 Javascript
举例讲解Node.js中的Writable对象
Jul 29 Javascript
jquery实现界面无刷新加载登陆注册
Jul 30 Javascript
详解MVC如何使用开源分页插件(shenniu.pager.js)
Dec 16 Javascript
Vue 2.0入门基础知识之内部指令详解
Oct 15 Javascript
微信小程序绘制图片发送朋友圈
Jul 25 Javascript
微信小程序进入广告实现代码实例
Sep 19 Javascript
vue使用自定义事件的表单输入组件用法详解【日期组件与货币组件】
Jun 01 Javascript
JavaScript登录验证码的实现
Oct 27 #Javascript
微信小程序  自定义创建详细介绍
Oct 27 #Javascript
vue中渐进过渡效果实现
Oct 27 #Javascript
基于JS实现横线提示输入验证码随验证码输入消失(js验证码的实现)
Oct 27 #Javascript
真正好用的js验证上传文件大小的简单方法
Oct 27 #Javascript
vue的props实现子组件随父组件一起变化
Oct 27 #Javascript
用js控件div的滚动条,让它在内容更新时自动滚到底部的实现方法
Oct 27 #Javascript
You might like
收音机指标测试方法及仪器
2021/03/01 无线电
PHP新手上路(二)
2006/10/09 PHP
php支付宝系列之电脑网站支付
2018/05/30 PHP
jquery json 实例代码
2010/12/02 Javascript
js获取键盘按键响应事件(兼容各浏览器)
2013/05/16 Javascript
用JS实现3D球状标签云示例代码
2013/12/01 Javascript
郁闷!ionic中获取ng-model绑定的值为undefined如何解决
2016/08/27 Javascript
JavaScript利用正则表达式替换字符串中的内容
2016/12/12 Javascript
d3.js中冷门却实用的内置函数总结
2017/02/04 Javascript
Bootstrap风格的zTree右键菜单
2017/02/17 Javascript
利用n工具轻松管理Node.js的版本
2017/04/21 Javascript
详解vue-router 2.0 常用基础知识点之router-link
2017/05/10 Javascript
详解bootstrap导航栏.nav与.navbar区别
2017/11/23 Javascript
JS控制鼠标拒绝点击某一按钮的实例
2017/12/29 Javascript
ES6中let 和 const 的新特性
2018/09/03 Javascript
vue中如何实现后台管理系统的权限控制的方法步骤
2019/09/05 Javascript
H5实现手机拍照和选择上传功能
2019/12/18 Javascript
javascript实现时间日期的格式化的方法汇总
2020/08/06 Javascript
vue实现点击出现操作弹出框的示例
2020/11/05 Javascript
Python实现保证只能运行一个脚本实例
2015/06/24 Python
python处理html转义字符的方法详解
2016/07/01 Python
Python3简单实例计算同花的概率代码
2017/12/06 Python
用Python实现读写锁的示例代码
2018/11/05 Python
python分割一个文本为多个文本的方法
2019/07/22 Python
JSF的标签库有哪些
2012/04/27 面试题
通信专业个人自我鉴定
2013/10/21 职场文书
大学生的网络创业计划书
2013/12/26 职场文书
数控机床专业自荐信
2014/05/19 职场文书
乡镇食品安全责任书
2014/07/28 职场文书
庆元旦演讲稿
2014/09/15 职场文书
再婚婚前财产协议书范本
2014/10/19 职场文书
放牛班的春天观后感
2015/06/01 职场文书
《小乌鸦爱妈妈》教学反思
2016/02/19 职场文书
pygame面向对象的飞行小鸟实现(Flappy bird)
2021/04/01 Python
Mysql中 unique列插入重复值该怎么解决呢
2021/05/26 MySQL
CSS作用域(样式分割)的使用汇总
2021/11/07 HTML / CSS