jQuery_review 之 通过.load()方法来实现异步加载HTML文档
来源:互联网 发布:yeezy抢鞋软件 编辑:程序博客网 时间:2024/05/14 09:43
原生的ajax编写起来是相当麻烦的一件事情,我们不仅仅要处理不同浏览器下的XMLHttpRequest对象不同的初始化,还需要识记大量的XMLHttpRequest对象的属性和方法,而且做的很多都是重复性的工作,就如同jdbc的实现方式是一样的,JDBC有很多固定的模式,所以不管是Hibernate还是Ibatis亦或是Spring都使用模板模式来封装了大量相同的调用,让整个方法变得更加容易使用。对于程序员来说,这些都是一些非常好的事情,因为再也不用重复造轮子了,重复造轮子,成本高,性能也未必与成本成正比,所以,作为一个程序员,应当始终明确自制与采购的抉择,如同任老板说的:”我们技术人员不要对技术有宗教般的崇拜,只有卖出去的技技术才有价值“,所以HW提倡的在技术上只领先那么一点点,是非常有道理的,君不见曾经的贝尔实验室,终究还是烟消云灭。
jQuery为我们为ajax做了非常好的封装,比如我们现在有一个需求,需求的内容大概是从服务端获取<div><span>stringValue</span></div>一段Html代码,但是我们只是想要其中的span元素,并且将span元素添加到本地的HTML当中来。这个是用是用load方法就再合适不过了。load()方法,有三个参数可以选择, 第一个参数就是url,这个参数用来告诉jquery从什么地方去请求html文档。第二个参数是键值对,一般jQuery的键值对都支持{key:value,key:value}的写法。第三个就是回调函数,不管执行成功不成功,回调函数总是会被执行的。
尤其要注意的是,load方法第一个参数,url后面可以增加一个空格,然后写过滤的内容,例如,上面的我们就可以写成”url span“,就是告诉jQuery,我们得到了返回的html文档之后,仅仅是需要其中的span元素。这个是一个相当实用的方法。对于load的第二个参数,如果为空的话,jQuery会非常智能的将这次ajax采用get方法来进行传送,如果里面是含有参数的,那么就会自动的实用POST进行参数的转发。(TOBO验证,如果url的后面通过?name=value来传递函数,会实用post还是get?)。第三个参数是回调函数,其实回调函数在实际的开发当中是非常有用的,因为我们总不能保证所有的ajax请求都能得到正确的相应,这一点可以看一下jQuery的官方文档,对回调函数默认的三个参数有明确的认识,这个非常重要。
server端的DEMO代码如下:
package com.samsung.servlet;import java.io.IOException;import java.util.ArrayList;import java.util.List;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class TestServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {doPost(req, resp);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException {String name = req.getParameter("name");String address = req.getParameter("address");StringBuffer sb = new StringBuffer();sb.append("<div><span>hi! nice to meet you! ");sb.append(name).append(",(");sb.append(address).append("),");sb.append("how are you getting along?</span></div>");resp.getWriter().print(sb.toString());}}
前端的DEMO代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <script type="text/javascript" src="jquery-1.8.3.js"></script><script type="text/javascript">$(function(){$("#getContentByAjax").click(function(){$("#showText").load("test span",{name:"czz",address:'address'},callBack);});function callBack(){alert('Ajax finish');}}); </script> </head> <body> <div id="showText"></div> <input type="button" id="getContentByAjax" value="sendAjax"> </body></html>
1 0
- jQuery_review 之 通过.load()方法来实现异步加载HTML文档
- jQuery_review之通过$.get()和$.post()方法来实现异步加载
- jQuery_review之使用$.getScript()以及$.getJSON来与服务端进行异步信息交互
- jQuery的ajax()检验用户名;通过jQuery的load()/get()/post()方法实现;使用XMLHTTPRequest对象来进行AJAX的异步数据交互
- Jquery load()方法加载html片段
- jQUery_review之jQuery的终极ajax方法$.ajax()
- jQuery_review之textarea的放大和缩小的jQuery实现
- jQuery_review之textarea滚动条往上往下的实现
- jQuery_review之jQuery实现多选框的反选、全选、全不选
- jQuery_review之jQuery实现左右多选内容交换
- jQuery之异步Ajax请求使用 通过传递参数来调用后台方法返回状态
- UI初学者之UIImageView类别扩展来实现异步加载缓存和读取
- 通过 HTTP 加载 XML 文件时 Load 方法失败
- jquery的load()方法加载html后javascript失效解决方法
- 异步load()加载 ckeditor 编辑器
- html+js实现图片预加载(异步加载)
- jq代码学习24-----ajax load()加载、筛选加载HTML问文档 fl ch6 p192
- 通过两种方法实现在HTML页面加载完毕后运行某个js
- 自动评论CSDN下载资源(httpclient)
- 暴力美学HDU3650
- java面向对象-final关键字
- JAVA帮助文档全系列 JDK1.5 JDK1.6 JDK1.7 官方中英完整版下载
- Delphi 常用控件之TlistView总结
- jQuery_review 之 通过.load()方法来实现异步加载HTML文档
- 线段树,最大最小值
- java面向对象-抽象类abstract
- 2014杭电多校联合第一场Task(贪心+STL使用)
- NT4源码编译环境
- 查询出Exchange Server的通讯组,并将通讯组成员输出到本地的文本文件中!
- jpa截图
- Qt中的元对象系统
- 这里是技术论坛啊!我怎么净写些与技术无关的东西。