Jquery重新学习之八[Ajax运用总结B]

 

上一篇简单介绍普通javascript以及Jquery的AJAX方法,其中Jquery.ajax()是功能比较强悍的底层方法,可以更多地关注实现过程中的细节;除Jquery.ajax()方法外,Jquery还提供其它几个比较简单但作用有限的方法;包含Jquery全局函数Jquery.get()、Jquery.post()、Jquery.getJSON()、Jquery.getScript()和load()方法;

1:Jquery.get(url,[data],[callback],[type]) 通过远程HTTP GET请求载入信息,简单的GET请求功能以取代复杂Jquery.ajax()中的GET方式,如果需要在出错时执行函数,请使 用Jquery.ajax();其中参数如下:url:待载入页面的URL地址。data:待发送 Key/value 参数(可选)。callback:载入成功时回调函数(可选)。type:返回内容格式,xml, html, script, json, text, _default(可选)。

实例代码:

<head>
<title>$.get发送请求</title>
<script type="text/javascript" src="Jscript/jquery-1.8.2.min.js">
</script>
<script type="text/javascript">
$(function() {
$("#Button1").click(function() {
//打开文件,并通过回调函数返回服务器响应后的数据
$.get("UserInfo.aspx",
{ name: encodeURI($("#txtName").val()) },
function(data) {
$("#divTip")
.empty() //先清空标记中的内容
.html(data); //显示服务器返回的数据
})
})
})
</script>
</head>
<body>
<div class="divFrame">
<div class="divTitle">
<span>姓名:</span>
<input id="txtName" type="text" class="txt" />
<input id="Button1" type="button"
class="btn" value="请求数据" />
</div>
<div class="divContent">
<div id="divTip"></div>
</div>
</div>
</body>
</html> 其中UseInfo.aspx页面代码如下: string strName = System.Web.HttpUtility.UrlDecode(Request["name"]);//解码姓名字符
string strHTML = "<div class='clsShow'>"; //初始化保存内容变量
if (strName == "小明")
{
strHTML += "姓名:小明<br>";
strHTML += "性别:男<br>";
strHTML += "邮箱:123@163.com<hr>";
}
strHTML += "</div>";
Response.Write(strHTML);

2:Jquery.post(url,[data],[callback],[type]) 通过远程HTTP POST请求载入信息,简单的GET请求功能以取代复杂Jquery.ajax()中的POST方式,全局函数Jquery.post()跟Jquery.get()在本质上没有太大的区别,所不同的是,Get方式适合传递数据量较大的数据,同时,其请求的历史信息会保存在浏览器的缓存中,有一定的安全风危;Post方式就不会存在这两方面的不足;,如果需要在出错时执行函数,请使用Jquery.ajax();其中参数如下:url:待载入页面的URL地址。data:待发送 Key/value 参数(可选)。callback:载 入成功时回调函数(可选)。type:返回内容格式,xml, html, script, json, text, _default(可选)。

实例代码:

<head>
<title>$.post发送请求</title>
<script type="text/javascript" src="Jscript/jquery-1.8.2.min.js">
</script>
<script type="text/javascript">
$(function() {
$("#Button1").click(function() {
//打开文件,并通过回调函数返回服务器响应后的数据
$.post("User_Info.aspx",
{ name: encodeURI($("#txtName").val()),
sex: encodeURI($("#selSex").val())
},
function(data) {
$("#divTip")
.empty() //先清空标记中的内容
.html(data); //显示服务器返回的数据
})
})
})
</script>
</head>
<body>
<div class="divFrame">
<div class="divTitle">
<span>姓名:</span>
<input id="txtName" type="text" class="txt" />
<select id="selSex" style="height:22px;margin-right:3px">
<option value="">选性别</option>
<option value="男">男</option>
<option value="女">女</option>
</select>
<input id="Button1" type="button"
class="btn" value="请求" />
</div>
<div class="divContent">
<div id="divTip"></div>
</div>
</div>
</body>
</html> 其中User_Info.aspx代码如下: string strName = System.Web.HttpUtility.UrlDecode(Request["name"]);//解码姓名字符
string strSex = System.Web.HttpUtility.UrlDecode(Request["sex"]);//解码性别字符
string strHTML = "<div class='clsShow'>"; //初始化保存内容变量
if (strName == "小明" && strSex=="男")
{
strHTML += "姓名:小明<br>";
strHTML += "性别:男<br>";
strHTML += "邮箱:345@163.com<hr>";
}
strHTML += "</div>";
Response.Write(strHTML);

3:jQuery.getJSON(url, [data], [callback])通过 HTTP GET 请求载入 JSON 数据。其方法可以专门快速获得JSON文件的内容,其中参数如下:url:待载入页面的URL地址。 data:待发送 Key/value 参数(可选)。callback:载入成功时回调函数(可选)。

实例如下:

<head>
<title>getJSON函数获取数据</title>
<script type="text/javascript" src="Jscript/jquery-1.8.2.min.js">
</script>
<script type="text/javascript">
$(function() {
$("#Button1").click(function() {
//打开文件,并通过回调函数处理获取的数据
$.getJSON("UserInfo.json", function(data) {
$("#divTip").empty(); //先清空标记中的内容
var strHTML = ""; //初始化保存内容变量
$.each(data, function(InfoIndex, Info) { //遍历获取的数据
strHTML += "姓名:" + Info["name"] + "<br>";
strHTML += "性别:" + Info["sex"] + "<br>";
strHTML += "邮箱:" + Info["email"] + "<hr>";
})
$("#divTip").html(strHTML); //显示处理后的数据
})
})
})
</script>
</head>
<body>
<div class="divFrame">
<div class="divTitle">
<input id="Button1" type="button"
class="btn" value="获取数据" />
</div>
<div class="divContent">
<div id="divTip"></div>
</div>
</div>
</body>
</html> 其中UserInfo.json文件如下: [ {
"name": "小明", "sex": "男", "email": "344@163.com"
}, {
"name": "小丽", "sex": "女", "email": "34@163.com"
} ]

4:jQuery.getScript(url, [callback]) 通过 HTTP GET 请求载入并执行一个 JavaScript 文件,jQuery.getScript()不仅可以像加载页面片段一样轻松地注入脚本,而且所注入的脚本会自动执行,大大提高了页面的执行效率。其中参数如下:url:待载入 JS 文件地址。callback:成功载入后回调函数(可选)。

实例代码(把数据存放在JS的数组中,加载JS文件,输出数组的内容):

<head>
<title>getScript函数获取数据</title>
<script type="text/javascript"
src="Jscript/jquery-1.8.2.min.js">
</script>
<script type="text/javascript">
$(function() {
$("#Button1").click(function() { //按钮单击事件
//打开已获取返回数据的文件
$.getScript("UserInfo.js");
})
})
</script>
</head>
<body>
<div class="divFrame">
<div class="divTitle">
<input id="Button1" type="button"
class="btn" value="获取数据" />
</div>
<div class="divContent">
<div id="divTip"></div>
</div>
</div>
</body>
</html> 其中UserInfo.js代码如下: var data = [
{
"name": "小明",
"sex": "男",
"email": "333@163.com"
},
{
"name": "小丽",
"sex": "女",
"email": "li@163.com"
}
]; var strHTML = "";
$.each(data, function() {
strHTML += "姓名:" + this["name"] + "<br>";
strHTML += "性别:" + this["sex"] + "<br>";
strHTML += "邮箱:" + this["email"] + "<hr>";
})
$("#divTip").html(strHTML);

5:load(url, [data], [callback])方法与上面其四个不同的它不是全局函数,载入远程 HTML 文件代码并插入至 DOM 中,其中参数如下:url:待装入 HTML 网页网址。data:发 送至服务器的 key/value 数据,在jQuery 1.3中也可以接受一个字符串了。callback:载入成功时回调函数。注意:参数url还可以用于过滤页面中的某类别的元素,如代码"$. ('#divTip').load("b.html .divContent")",则表示获取页面b.html中类别名为"divContent"的全部元素;因为浏览器在获得数据时经常会有缓存,所以在请求时可以增加一个时 间的参数避开这个问题:"b.html?date="+Date();

实例代码:

<head>
<title>load()方法实现Ajax功能</title>
<script type="text/javascript"
src="Jscript/jquery-1.8.2.min.js">
</script>
<script type="text/javascript">
$(function() {
$("#Button1").click(function() {
$("#divTip").load("b.html");
})
})
</script>
</head>
<body>
<div class="divFrame">
<div class="divTitle">
<input id="Button1" type="button"
class="btn" value="获取数据" />
</div>
<div class="divContent">
<div id="divTip"></div>
</div>
</div>
</body>
</html> 其中b.html代码如下: <div class="clsShow">姓名:小明<br />性别:男<br />邮箱:354@163.com</div>

感谢您的阅读,坚持每天进步一点点,离成功就更新一步;希望文章对您有所帮助;

 
 
 
标签: Jquery

Ajax运用总结B的更多相关文章

  1. jQuery之ajax实现篇

    jQuery的ajax方法非常好用,这么好的东西,你想拥有一个属于自己的ajax么?接下来,我们来自己做一个简单的ajax吧. 实现功能 由于jq中的ajax方法是用了内置的deferred模块,是P ...

  2. Ajax及跨域

    概念 Ajax Ajax,Asynchronous JavaScript and XML,字面意思:异步的 JavaScript 和 XML,是指一种创建交互式网页应用的网页开发技术. 用于异步地去获 ...

  3. 一个粗心的Bug,JSON格式不规范导致AJAX错误

    一.事件回放  今天工作时碰到了一个奇怪的问题,这个问题很早很早以前也碰到过,不过没想到过这么久了竟然又栽在这里. 当时正在联调一个项目,由于后端没有提供数据接口,于是我直接本地建立了一个 json ...

  4. ABP文档 - Javascript Api - AJAX

    本节内容: AJAX操作相关问题 ABP的方式 AJAX 返回信息 处理错误 HTTP 状态码 WrapResult和DontWrapResult特性 Asp.net Mvc 控制器 Asp.net ...

  5. ajax异步请求

    做前端开发的朋友对于ajax异步更新一定印象深刻,作为刚入坑的小白,今天就和大家一起聊聊关于ajax异步请求的那点事.既然是ajax就少不了jQuery的知识,推荐大家访问www.w3school.c ...

  6. 调用AJAX做登陆和注册

    先建立一个页面来检测一下我们建立的用户名能不能用,看一下有没有已经存在的用户名吗 可以通过ajax提示一下 $("#uid").blur(function(){ //取用户名 va ...

  7. Ajax 概念 分析 举例

    Ajax是结合了访问数据库,数据访问,Jquery 可以做页面局部刷新或者说是页面不刷新,我可以让页面不刷新,仅仅是数据的刷新,没有频繁的刷页面,是现在比较常用的一种方式做页面那么它是怎么实现页面无刷 ...

  8. ajax

    常见的HTTP状态码状态码:200 请求成功.一般用于GET和POST方法 OK301 资源移动.所请求资源移动到新的URL,浏览器自动跳转到新的URL Moved Permanently304 未修 ...

  9. 学习笔记之MVC级联及Ajax操作

    由于刚转型到MVC,MVC的架构模式很多不是很清楚,比如今天就想做个级联的操作,因为之前的ASP.NET的方式是通过:控件-->添加事件-->后台编写级联事件进行触发,但是这个MVC就不同 ...

  10. javascript表单的Ajax 提交插件的使用

    Ajax 提交插件 form.js 表单的下载地址:官方网站:http://malsup.com/jquery/form/ form.js 插件有两个核心方法:ajaxForm()和ajaxSubmi ...

随机推荐

  1. KafkaOffsetMonitor

    Kafka实战-KafkaOffsetMonitor   1.概述 前面给大家介绍了Kafka的背景以及一些应用场景,并附带上演示了Kafka的简单示例.然后,在开发的过程当中,我们会发现一些问题,那 ...

  2. MVC基本概念和流程

    MVC基本概念和流程 MVC的概念 Model(模型):包含数据和行为.不过现在一般都分离开来:Value Object(数据) 和 服务层(行为). View(视图):负责进行模型的展示,一般就是展 ...

  3. Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory

    1.错误叙述性说明 2014-7-12 0:38:57 org.apache.catalina.core.ApplicationContext log 信息: No Spring WebApplica ...

  4. Flex在使用无线电的button切换直方图横坐标和叙述性说明

    1.问题叙述性说明 一组单选button,有周和月之分,选择"周",柱状图横坐标显示的是周,纵坐标显示的是人数:选择"月",柱状图横坐标显示的月,纵坐标显示的是 ...

  5. PHP的MySQL扩张:MySQL数据库概述

    资源:http://www.ido321.com/1023.html 一.SQL:结构化查询语言 SQL(Structured Query Language)是高级的非过程化变成语言.专门用于查询和改 ...

  6. Self referencing loop detected with type

    json.net namespace EFDAL{    using System;    using System.Collections.Generic;    using Newtonsoft. ...

  7. perconaXTRADB Cluster在Redhat Linux上的安装

    installing-perconaXTRADB Cluster 5.6 For Redhat 6.4 一.server版本号查看 Root# cat /etc/redhat-release Red ...

  8. jQuery邮箱验证正则表达式验证邮箱合法

    if($.trim(email)==''||$.trim(email)=='邮    箱:'||$.trim(email)==null){ alert('邮箱不能为空!'); return false ...

  9. 安卓MonkeyRunner源码分析之启动

    在工作中因为要追求完成目标的效率,所以更多是强调实战,注重招式,关注怎么去用各种框架来实现目的.但是如果一味只是注重招式,缺少对原理这个内功的了解,相信自己很难对各种框架有更深入的理解. 从几个月前开 ...

  10. jqgrid-asp.net-mvc

    jqgrid-asp.net-mvc 你是否使用jqgrid? 你是否想在C#/asp.net mvc中使用jqgrid? 那你很可能曾经为了分析jqgrid的request url用fiddler忙 ...