ASYNCHRONOUS JAVASCRIPT AND XML
JS层
// 定义一个全局
var xmlHttp;
// 返回一个xmlHttpRequest对象
function createXMLHttpRequest() {
if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
} else {
if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
// 在动作触发点调用此方法,要传参
function searchBwd(dirid){
var id = dirid;
createXMLHttpRequest();
if (xmlHttp) {
// 设置url路径。执行JAVA层方法的路径。如带参,URL中的&参数为其页面相关FORM BEAN中的字段,如下面的“singledirid”。
var url = "addBWDVocAction.do?actionType=GetDirBwd&singledirid=" + id;
// 异步更新
xmlHttp.open("POST", url, true);
xmlHttp.onreadystatechange = callback;// 此方法在下面。
xmlHttp.send();
} else {
alert("Can not create the request,please check your browser!!");
}
}
function callback() {
if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
setBwdValue();// 此处开始执行在页面上画数据列表的方法
// 如类似于先存储,再查询展现新结果时,在此callback方法处再引入查询方法
} else {
window.location = "admin_addbwd.jsp";// 指定结果页面
}
}
}
// 页面上画数据列表
function setBwdValue() {
// 下面这定义三个变量,在其后的FOR循环里取值,来源是JAVA层(如STRUTS里的ACTION)输出的XML流,后面给出。
var bwdid;
var bwdName_zh;
var bwdName;
var xmlDoc = xmlHttp.responseXML;
var root = xmlDoc.getElementsByTagName("xml").item(0);
for (var i = 0; i < root.childNodes.length; i++) {
var child = root.childNodes[i].childNodes;
// 下面给以上三个自定义的变量赋值:
bwdid = child[0].firstChild.nodeValue;
bwdName_zh = child[1].firstChild.nodeValue;
bwdName = child[2].firstChild.nodeValue;
// 先判断三个变量里的值是否为空
if (bwdid != "" && bwdName_zh != "" && bwdName != "") {
//添加一行
var newTr = dirbwdTbl.insertRow();
//添加一列
var newTd0 = newTr.insertCell();
//设置列内容和属性
newTd0.innerHTML =
"<label
相关文档:
scrollHeight: 获取对象的滚动高度。
scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离
scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离
scrollWidth:获取对象的滚动宽度
offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度
offsetL ......
ugmbbc发布于 2009-11-14 09:41:43| 7628 次阅读 字体:大 小 打印预览
var ReTitle = '回复:Google 排名中的 10 个最著名的 JavaScript 库';
感谢COMSHARP CMS的投递
新闻来源:tripwiremagazine.com
JavaScript 是 Web 开发与设计中不可或缺的东西,不管是一个简单的网页还是一个专业的站点,也不管你是高手还是菜鸟 ......
// 去掉字符串左边空格
function trimToLeft(str){
var i;
for(i=0;i<str.length; i++) {
if(str.charAt(i)!=" ") break;
......
在prototype框架中的类继承实现机制
//为Object类添加静态方法:extend
Object.extend = function(destination, source) {
for(property in source) {
destination[property] = source[property];
}
return destination;
}
//通过Object类为每个对象添加方法 ......
日前,Mozilla 的 Arun Ranganathan 向 W3C 提交了一个草案,旨在推出一个 JavaScript API,让
JavaScript 脚本直接操作本地文件,Firefox 的最新浏览器版本中已经对该 API 提供了大量的支持,不过出于安全考虑,该API
将只对本地文件提供有限的访问。
该 API 引入了一个 FileReader 对象,可以异步加载本地文件系统中的 ......