转-----实现基本的Ajax和Json请求
前面已经封装好了一个方法ajax(),通过这个方法可以实现Ajax请求,接下来就是给出
例程来测试这个方法和实现简单的功能。
视图的部分代码如下:
|
1
2
3
4
5
6
7
8
9
|
<body> <div> the Numger is : <br /><label id="number"> </label> <br /> the Students' Infomation:<br /><label id="studentInfo"> </label> <br /> <input type="button" value="请求数字(ajax请求)" onclick='requestNumber()'/> <label> </label> <input type="button" value="请求学生信息(json请求)" onclick="requestStudentInfo()" /> </div></body> |
功能一:浏览器向服务器请求一个数字(通过ajax实现)
视图代码中添加脚本代码:

1 <script src="../../Scripts/jquery-1.7.1.min.js" type="text/javascript"></script>
2 <script src="../../Scripts/ajax.js" type="text/javascript"></script>
3 <script src="../../Scripts/common.js" type="text/javascript"></script>
4
5 <script language="javascript" type="text/javascript">
6 //请求数字
7 function requestNumber() {
8 ajax("POST","/Home/Get_Number", function (resText) {
9 //直接接收Ajax请求返回的内容
10 var text = resText;
11 $("number").innerHTML = text;
12 });
13 }
14 </script>

后台服务器代码:

1 //ajax请求的action方法
2 public void Get_Number()
3 {
4 int num =10;
5 Response.Write(num);
6 return;
7 }

功能二:浏览器向服务器请求一个学生的信息(通过Json实现)
视图代码中添加脚本代码:

1 //请求学生信息
2 function requestStudentInfo() {
3 ajax("POST","/Home/Get_Student", function (resText) {
4 //将序列化的字符串内容进行解析,得到Js对象
5 var student = JSON.parse(resText);
6 var text="";
7 text += "学号:" + student.StuId + "<br />";
8 text += "姓名:" + student.Name + "<br />";
9 text += "性别:" + student.Gender + "<br />";
10 text += "年龄:" + student.Age + "<br />"
11
12 $("studentInfo").innerHTML = text;
13 });
14 }

代码中使用到了一个方法JSON.parse(),该方法是将返回的序列化字符串解析成一个对象或者对象集合,
因此需要添加js库--json2.js,如下:
<script src="../../Scripts/json2.js" type="text/javascript"></script>
后台服务器代码:
1 //json请求的action方法
2 public JsonResult Get_Student()
3 {
4 Student student = new Student(1001, "张三","男",22);
5 return Json(student); //Json()方法将一个对象或者对象集合进行序列化
6 }
运行结果:

总结:通过封装好的ajax()方法实现了向服务器请求一个数字和一个学生信息对象的功能,
ajax请求和json请求没有本质上的区别,两者都是通过ajax()方法来发送XMLHttpRequest
请求,只是ajax请求就直接接收返回的数据就可以了,而json请求需要将接收到的序列化字
符串解析成JS对象或者对象集合(反序列化),同时也要求服务器端将对象或者对象集合序列化
成字符串进行发送(序列化)。
转-----实现基本的Ajax和Json请求的更多相关文章
- 实现基本的Ajax和Json请求
前面已经封装好了一个方法ajax(),通过这个方法可以实现Ajax请求,接下来就是给出 例程来测试这个方法和实现简单的功能. 视图的部分代码如下: <body> <div> ...
- 自用ajax的json请求
function singlePriceSubmit(){ var json={}; json["area"]=areaStr1; json["goodCateIdStr ...
- servlet 中处理 json 请求,并访问 service 类,返回处理结果
前言:jar 包中的 servlet 必须可以处理前端发出的 ajax 请求,接收参数,并返回结果. github地址:yuleGH github 这里有个约定,url 地址是 .json 结尾的,如 ...
- AJAX 中JSON 和JSONP 的区别 以及请求原理
AJAX 跨域请求 - JSONP获取JSON数据 博客分类: Javascript /Jquery / Bootstrap / Web Asynchronous JavaScript and X ...
- Jquery DataTable AJAX跨域请求的解决方法及SSM框架下服务器端返回JSON格式数据的解决方法
如题,用HBuilder开发APP,涉及到用AJAX跨域请求后台数据,刚接触,费了不少时间.幸得高手指点,得以解决. APP需要用TABLE来显示数据,因此采用了JQ 的DataTable. 在实现 ...
- jQuery:多个AJAX/JSON请求对应单个回调
原文链接:jQuery: Multiple AJAX and JSON Requests, One Callback 原文日期: 2014年4月15日 翻译日期: 2014年4月22日 翻译人员: 铁 ...
- Ajax跨域之ContentType为application/json请求失败的问题
项目里的接口都是用springmvc写的,其中在@requestmapping接口中定义了consumes="application/json",也就是该接口只接受ContentT ...
- AJAX跨域请求json数据的实现方法
这篇文章介绍了AJAX跨域请求json数据的实现方法,有需要的朋友可以参考一下 我们都知道,AJAX的一大限制是不允许跨域请求. 不过通过使用JSONP来实现.JSONP是一种通过脚本标记注入的方式, ...
- jQuery 发送 ajax json 请求。。
$.extend({ postJson: function (data) { data = data || {} $.ajax({ type: "POST", url: data. ...
随机推荐
- JKXY的视频内容下载工具类
package cn.jsonlu.make.license; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONOb ...
- A的ascll吗是多少?
//输入一个字符,返回他的ascll码 #include<stdio.h> int main() { char a; while(scanf("%c",&a)! ...
- WindowsServer2003SP2EnterpriseEdition在Virtual上的安装
下载镜像(迅雷): http://192.168.0.101/WindowsServer2003SP2EnterpriseEdition.iso?fid=fWljwnwNgumTtRIy- *BY*a ...
- 用数据库管理SERV-U的用户时,如何修改密码及原理
将serv-u设置成数据库管理用户的前提是先要建立数据源 如何用Serv-U连接ODBC|1.可以在 FTP所在服务器安装一个 SQL Server 数据库,也可以使用论坛自带的数据库.建议在 FT ...
- js中push()方法
直接上代码: var roleIdsTemp = []; $("#addRole .modalcheckbox-all").each(function(key, value) { ...
- C# 基础 知识点
类型 1.decimal为高精度浮点数,常用于货币计算,然后它不是基本类型,所以性能相对float和double要差. 2.@用于字符串前使转义字符 \ 无效,甚至能将回车当作换行符直接赋值给字符串 ...
- C# 控制台窗口的显示与隐藏
1. 定义一个Consolse帮助类,如下: /// <summary> /// 控制台帮助类 /// </summary> public static class Conso ...
- a*b(高进度乘以int类型的数)
以下是我今日的a-b(高精度)的程序,\(^o^)/偶也偶也偶也偶也! 程序: #include<stdio.h> #include<string.h> char s[1000 ...
- Linux的more、less
2.more 文件内容或输出查看工具: more 是我们最常用的工具之一,最常用的就是显示输出的内容,然后根据窗口的大小进行分页显示,然后还能提示文件的百分比: de>[root@localho ...
- Windows phone 之Image控件
wp目前支持的图片格式为png和jpeg ,我们可以通过设置Source属性设置图片源. 还有两个属性是:Stretch,Opacity Stretch属性 image的拉伸行为有此属性决定,此属性是 ...