Ajax基础必读:AJAX中的一些关键技术

2016-02-19 22:32 11 1 收藏

下面请跟着图老师小编一起来了解下Ajax基础必读:AJAX中的一些关键技术,精心挑选的内容希望大家喜欢,不要忘记点个赞哦!

【 tulaoshi.com - Web开发 】

ajax架构中主要涉及的技术:
client: javascript解析xml, 操纵DOM修改html页面,javascript是“OO”的语言。
server: servlet + dao, 实现service接口即可

下面是client中主要的代码:
1。JS中封装解析xml的代码,以及实例应用。
Quote
//类的构造,传入xml文档和需要处理的标签名称
function DataSet(xmldoc, tagLabel) {
this.rootObj = xmldoc.getElementsByTagName(tagLabel)

//3个方法
this.getCount = getCount
this.getData = getData
this.getAttribute = getAttribute
}
function getCount(){
return this.rootObj.length
}
function getData(index, tagName){
if (index = this.count) return "index overflow"
var node = this.rootObj[index]
var str = node.getElementsByTagName(tagName)[0].firstChild.data
return str
}

function getAttribute(index, tagName) {
if (index = this.count) return "index overflow"
var node = this.rootObj[index]
var str = node.getAttribute(tagName)
return str
}
//如何使用DataSet类
function updateByXML(xmlDoc) {

var employeeDS = new DataSet(xmlDoc,"employee"); //关心的标签名称
var count = employeeDS.getCount()
for(i=0;icount;i++) {
var name = employeeDS.getAttribute(i,"name")
var job = employeeDS.getData(i,"job")
var salary = employeeDS.getData(i,"salary")
alert(name + "," + job + "," + salary)
}
//使用的xml格式,类似如下
?xml version="1.0" encoding="gb2312"?
employees
employee name="Billgates"
jobProgrammer/job
salary32768/salary
/employee
employee name="王涛"
job无业游民/job
salary70000/salary
/employee
employee name="Big 中华"
job哈尔滨CEO/job
salary100000/salary
/employee
/employees
2。操纵DOM,创建table,显示获得的数据
Quote
function deleteOldTable() {
delRow = document.getElementsByTagName("table").length
//此句仅在本例中使用,因为本例中已经有一个table了,因此不能删除,需要根据情况变化一下2005.11.17
if(delRow == 1) return

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

var node = document.getElementsByTagName("table")[delRow-1]; //表格
var c = node.childNodes.length
for(i=0;ic;i++)
node.removeChild(node.childNodes[0]); //删除全部单元行
}

//传入DataSet的一个实例即可
function makeTable(m_ds) {

deleteOldTable() //先清除以前的结果

var table = document.createElement("table");
table.setAttribute("border","1");
table.setAttribute("width","100%");

document.body.appendChild(table);
var header = table.createTHead();
var headerrow = header.insertRow(0);
headerrow.insertCell(0).appendChild(document.createTextNode("姓名"));
headerrow.insertCell(1).appendChild(document.createTextNode("职业"));
headerrow.insertCell(2).appendChild(document.createTextNode("工资"));

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

for(var i=0;im_ds.getCount();i++) {
var name = m_ds.getAttribute(i,"name")
var job = m_ds.getData(i,"job")
var salary = m_ds.getData(i,"salary")

var row = table.insertRow(i+1);
row.insertCell(0).appendChild(document.createTextNode(name));
row.insertCell(1).appendChild(document.createTextNode(job));
row.insertCell(2).appendChild(document.createTextNode(salary));
}
}

来源:http://www.tulaoshi.com/n/20160219/1628498.html

延伸阅读
标签: Web开发
现在方法有下面这几种: Application Proxies : 这种必须通过后台脚本,比如PHP等,实质就是用Ajax读触发本地PHP,然后用PHP读外部文件,并返回给Ajax显示 Script Tag Hack, or On-Demand JavaScript : 一样,要通过后台脚本 Apache Proxy : 这种方法是在Apache服务器中配置 apache's mod_rewrite or mod_proxy : 和上面一样,通过...
标签: Web开发
基于XML的异步JavaScript,简称AJAX,是当前Web创新(称为Web2.0)中的一个王冠。感谢组成AJAX的各种技术,Web应用的交互如Flickr, Backpack和Google在这方面已经有质的飞跃。这个术语源自描述从基于网页的Web应用到基于数据的应用的转换。在基于数据的应用中,用户需求的数据如联系人列表,可以从独立于实际网页的服务端取得并且可以被动态地...
标签: Web开发
Ajax技术是目前在浏览器中通过JavaScript脚本可以使用的所有技术的集合。Ajax并没有创造出某种具体的新技术,它所使用的大多数技术都是在很多年以前就已经存在了,然而Ajax以一种崭新的方式来使用所有的这些技术,使得古老的B/S方式的Web开发焕发了新的活力,迎来了第二个春天。 具体来说,Ajax基于下列这些核心技术: XHTML:对应W...
标签: Web开发
Web开发领域的最新时髦术语其实质是“旧貌换新颜”。 Ajax(Asynchronous JavaScript and XML)是结合了Java技术、XML以及JavaScript等编程技术,可以让开发人员构建基于Java技术的Web应用,并打破了使用页面重载的惯例。 Ajax是使用客户端脚本与Web服务器交换数据的Web应用开发方法。这样,Web页面不用打断交互流程进行重新加裁,就可以动...
标签: Web开发
不可否认,我是非常看好AJAX技术的。我以为AJAX技术对于互联网,就像HTML对于互联网一样。但同时又要看到,AJAX技术不能完全取代我们常规的WEB开发技术。AJAX技术有它让人眼睛一亮的优点,同时它也有很多弱点。 我们作为开发人员,不能因为AJAX技术好,就在WEB开发中全部使用AJAX。      对了,不能为了AJAX而AJ...

经验教程

973

收藏

57
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部