没有合适的资源?快使用搜索试试~ 我知道了~
这是我们在学习AJAX时的一些个学习心得,传上来希望对那些JAVA的初学者能够有所帮助
资源推荐
资源详情
资源评论
与服务器沟通:发送请求和处理回应
XMLHttpRequest 提供两各存取 服务器回应的属性:
1. responseText 将回应产生为字符串
2. responseXML 将回应产生为一个 XML 对象
如果后台返回的XML里包含有标签,可以先在后台把标签的"<"换成"<";而">"换成">"。这样就可以当成子元素接收。
处理 XML 文件的 DOM 元素属性:
<element>.childNodes 返回目前元素所有子元素的数组
<element>.firstChild 返回目前元素的第一个子元素
<element>.lastChild 返回目前元素的最后一个子元素
<element>.nodeValue 指定表示元素值的读/写属性
<element>.parentNode 返回元素的父节点
<element>.previousSibling 返回紧邻目前元素之前的元素
<element>.nextSibling 返回目前元素的后面的元素
<element>.tagName 返回目前元素的标签名
沿 XML 文件来回移动的 DOM 元素方法:
document.getElementById(id) 取得有指定唯一ID属性值文件中的元素
document.getElementsByTagName(name) 返回目前元素中有指定标签名的子元素的数组
<element>.hasChildNodes() 返回布尔值,表示元素是否有子元素
<element>.getAttribute(name) 返回元素的属性值,属性由name指定
动态建立内容时所用的 W3C DOM 属性和方法:
document.createElement(tagName) 建立由tagName指定的元素。比如以"div"作为参数,则生成一个div元素。
document.createTextNode(text) 建立一个包含静态文字的节点。
<element>.appendChild(childNode) 将指定节点增加到目前元素的子节点中。例如:select中增加option子节点
<element>.getAttribute(name) 取得元素中的name属性的值
<element>.setAttribute(name,value) 设定元素中的name属性的值
<element>.insertBefore(Node1,Node2) 将节点Node1作为目前元素的子节点插到Node2元素前面。
<element>.removeAttribute(name) 从元素中删除属性name
<element>.removeChild(childNode) 从元素中删除子元素childNode
<element>.replaceChild(newN,oldN) 将节点oldN替换为节点newN
<element>.hasChildnodes() 返回布尔值,表示元素是否有子元素
注意:文字实际上是父元素的一个子节点,所以可以使用firstChild属性来存取元素的文字节点。
有了文字节点后,可以参考文字节点的nodeValue属性来得到文字。
读取XML时,须考虑它的空格和换行符也作为子节点。
跨浏览器技巧:
1. IE不能用setAttribute设定class属性。
解决方法:同时使用 setAttribute("class","newClassName") 和 setAttribute("className","newClassName")
只使用 <element>.className = "newClassName" 也可行
2. IE中不能使用setAttribute设定style属性。即 <element>.setAttribute("style","fontweight:bold;") 不相容。
解决方法:使用 <element>.style.cssText = "fontweight:bold;"
3. 使用appendChild将<tr>元素直接增加到<table>中,则在IE中这一行并不出现,但其它浏览器却会出现。
解决方法:在<table>下增加<tbody>元素,再添加<tr>
4. IE不能直接添加按钮处理事件。如:addButton.setAttribute("onclick","addEmployee('unid');");不适用。
解决方法:addButton.onclick = function() { addEmployee('unid'); };//用匿名函数调用addEmployee()函数。
此外,onmouseover,onmouseout 等事件也要使用此方法。
Ajax概述:
Ajax是由Jesse James Garrett创造的,是"Asynchronous JavaScript+XML"的缩写
Adaptive Path公司的Jesse James Garrett如是说:
Ajax不是一种新技术,它把几种成熟的技术以新的方式组合而成,形成强大的功能,包含:
基于XHTML和CSS标准的表示;
使用document Object Model进行动态显示和交互;
使用XMLHttpRequest与服务器进行异步通信;
<element>.removeAttribute(name) 从元素中删除属性name
<element>.removeChild(childNode) 从元素中删除子元素childNode
<element>.replaceChild(newN,oldN) 将节点oldN替换为节点newN
<element>.hasChildnodes() 返回布尔值,表示元素是否有子元素
注意:文字实际上是父元素的一个子节点,所以可以使用firstChild属性来存取元素的文字节点。
有了文字节点后,可以参考文字节点的nodeValue属性来得到文字。
读取XML时,须考虑它的空格和换行符也作为子节点。
跨浏览器技巧:
1. IE不能用setAttribute设定class属性。
解决方法:同时使用 setAttribute("class","newClassName") 和 setAttribute("className","newClassName")
只使用 <element>.className = "newClassName" 也可行
2. IE中不能使用setAttribute设定style属性。即 <element>.setAttribute("style","fontweight:bold;") 不相容。
解决方法:使用 <element>.style.cssText = "fontweight:bold;"
3. 使用appendChild将<tr>元素直接增加到<table>中,则在IE中这一行并不出现,但其它浏览器却会出现。
解决方法:在<table>下增加<tbody>元素,再添加<tr>
4. IE不能直接添加按钮处理事件。如:addButton.setAttribute("onclick","addEmployee('unid');");不适用。
解决方法:addButton.onclick = function() { addEmployee('unid'); };//用匿名函数调用addEmployee()函数。
此外,onmouseover,onmouseout 等事件也要使用此方法。
Ajax概述:
Ajax是由Jesse James Garrett创造的,是"Asynchronous JavaScript+XML"的缩写
Adaptive Path公司的Jesse James Garrett如是说:
Ajax不是一种新技术,它把几种成熟的技术以新的方式组合而成,形成强大的功能,包含:
基于XHTML和CSS标准的表示;
使用document Object Model进行动态显示和交互;
使用XMLHttpRequest与服务器进行异步通信;
剩余27页未读,继续阅读
资源评论
sihaolan
- 粉丝: 0
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Screenshot_20240427_031602.jpg
- 网页PDF_2024年04月26日 23-46-14_QQ浏览器网页保存_QQ浏览器转格式(6).docx
- 直接插入排序,冒泡排序,直接选择排序.zip
- 在排序2的基础上,再次对快排进行优化,其次增加快排非递归,归并排序,归并排序非递归版.zip
- 实现了7种排序算法.三种复杂度排序.三种nlogn复杂度排序(堆排序,归并排序,快速排序)一种线性复杂度的排序.zip
- 冒泡排序 直接选择排序 直接插入排序 随机快速排序 归并排序 堆排序.zip
- 课设-内部排序算法比较 包括冒泡排序、直接插入排序、简单选择排序、快速排序、希尔排序、归并排序和堆排序.zip
- Python排序算法.zip
- C语言实现直接插入排序、希尔排序、选择排序、冒泡排序、堆排序、快速排序、归并排序、计数排序,并带图详解.zip
- 常用工具集参考用于图像等数据处理
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功