- 浏览: 1357639 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (453)
- Struts2 (4)
- Struts1 (16)
- Spring (9)
- Hibernate (5)
- AJAX (16)
- MS Server (9)
- Oracle (35)
- 测试技术 (5)
- 其他 (37)
- JSF (1)
- EJB (5)
- ASP.NET (9)
- iBATIS (5)
- Struts Spring Hibernate (2)
- HTML (12)
- Eclipse使用 (5)
- 设计模式 (5)
- JSP (32)
- 正则表达式 (2)
- 服务器 (12)
- Java基础 (48)
- MySQL (4)
- 面试 (22)
- UML (1)
- 数据结构 (3)
- Ant (2)
- 规范 (4)
- JavaScript (29)
- 软件使用及技巧 (25)
- PHP (1)
- DWR (3)
- FreeMarker (1)
- ExtJs (17)
- JFreeChart (9)
- Reports (2)
- JavaException (1)
- Java Mail (1)
- Flex (9)
- 异常 (12)
- Log4j (2)
- WebService (1)
- jQuery (1)
- Sybase (2)
- myeclipse_plugin (2)
- Linux (5)
- jbpm (2)
- SCM (1)
- mongoDB (1)
最新评论
-
lihua2008love:
<typeAlias alias="User& ...
IBATIS简单操作 -
lihua2008love:
...
关于项目框架设计的一点学习 -
c_jinglin:
我使用<OBJECT CLASSID="cls ...
这就是个静态页面通过js控制mscomm对某com设备进行访问的例子. -
zlbjava:
赞,用了还不错
java获取请求的ip地址,并解析ip所属地区 -
完美天龙:
cs842813290 写道楼主,我明白的地方:在链表已有N个 ...
JAVA实现双向链表
var ImgArr = new Array();
var level = 0;
var vid = 0;
var HTML = "";
var img = "";
function getSubject() {
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async = false;
xmlDoc.load("Work.xml");
if (xmlDoc.parseError.errorCode != 0) {
alert(xmlDoc.parseError.reason);
return;
} else {
var nodes = xmlDoc.documentElement.childNodes;
for (var i = 0; i < nodes.length; i++) {
img = "";
if (nodes(i).nodeName == "tree") {
vid++;
if (i == nodes.length - 1) {
ImgArr[level] = "<img src='images/L+.gif' + vid + "' " + vid + "')>";
img = ImgArr[level];
readTree(nodes(i), true);
} else {
ImgArr[level] = "<img src='images/T+.gif' + vid + "' " + vid + "')>";
img = ImgArr[level];
readTree(nodes(i), false);
}
} else {
if (nodes(i).nodeName == "node") {
img = "<img src='images/T.gif'>";
if (i == nodes.length - 1) {
img = "<img src='images/L.gif'>";
}
readNode(nodes(i));
}
}
}
}
delete (xmlDoc);
window.left.innerHTML = HTML;
return;
}
function readTree(cI, sp) {
var nodes = cI.childNodes;
var menuHTML = img;
menuHTML += "<img src='images/";
menuHTML += cI.selectNodes("image")(0).text;
menuHTML += "'>";
menuHTML += "<a href='";
if (cI.selectNodes("link")(0).text != "") {
menuHTML += cI.selectNodes("link")(0).text;
} else {
menuHTML += "#";
}
if (cI.selectNodes("target")(0).text != "") {
menuHTML += "' target='" + cI.selectNodes("target")(0).text;
}
menuHTML += "' " + vid + "')";
menuHTML += " title='";
menuHTML += cI.selectNodes("title")(0).text;
menuHTML += "'>";
menuHTML += cI.selectNodes("text")(0).text;
menuHTML += "</a><br>\n";
HTML += menuHTML;
HTML += "<div + vid + "' style='display:none'>\n";
ImgArr[level] = "<img src='images/i.gif'>";
if (sp) {
ImgArr[level] = "<img src='images/white.gif'>";
}
for (var i = 0; i < nodes.length; i++) {
level++;
ImgArr[level] = "<img src='images/i.gif'>\n";
if (sp) {
ImgArr[level] = "<img src='images/white.gif'>\n";
}
img = "";
var tempImg = "";
for (var j = 0; j < level; j++) {
tempImg += ImgArr[j];
}
img = tempImg;
if (nodes(i).nodeName == "tree") {
vid++;
if (i == nodes.length - 1) {
img += "<img src='images/L+.gif' + vid + "' " + vid + "')>";
readTree(nodes(i), true);
} else {
img += "<img src='images/T+.gif' + vid + "' " + vid + "')>";
readTree(nodes(i), false);
}
img = "";
} else {
if (nodes(i).nodeName == "node") {
if (i == nodes.length - 1) {
img += "<img src='images/L.gif'>";
} else {
img += "<img src='images/T.gif'>";
}
readNode(nodes(i));
}
}
level--;
}
HTML += "</div>\n";
return;
}
function readNode(cI) {
//alert("ok");
var nodeHTML = img;
nodeHTML += "<img src='images/";
nodeHTML += cI.selectNodes("image")(0).text;
nodeHTML += "'>";
nodeHTML += "<a href='";
nodeHTML += cI.selectNodes("link")(0).text;
if (cI.selectNodes("target")(0).text != "") {
nodeHTML += "' target='" + cI.selectNodes("target")(0).text;
}
nodeHTML += "' title='";
nodeHTML += cI.selectNodes("title")(0).text;
nodeHTML += "'>";
nodeHTML += cI.selectNodes("text")(0).text;
nodeHTML += "</a><br>\n";
HTML += nodeHTML;
return;
}
function divshow(vid) {
if (document.all["div" + vid].style.display == "none") {
document.all["div" + vid].style.display = "";
document.all["f" + vid].src = document.all["f" + vid].src.replace("+", "-");
} else {
document.all["div" + vid].style.display = "none";
document.all["f" + vid].src = document.all["f" + vid].src.replace("-", "+");
}
return;
}
var level = 0;
var vid = 0;
var HTML = "";
var img = "";
function getSubject() {
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async = false;
xmlDoc.load("Work.xml");
if (xmlDoc.parseError.errorCode != 0) {
alert(xmlDoc.parseError.reason);
return;
} else {
var nodes = xmlDoc.documentElement.childNodes;
for (var i = 0; i < nodes.length; i++) {
img = "";
if (nodes(i).nodeName == "tree") {
vid++;
if (i == nodes.length - 1) {
ImgArr[level] = "<img src='images/L+.gif' + vid + "' " + vid + "')>";
img = ImgArr[level];
readTree(nodes(i), true);
} else {
ImgArr[level] = "<img src='images/T+.gif' + vid + "' " + vid + "')>";
img = ImgArr[level];
readTree(nodes(i), false);
}
} else {
if (nodes(i).nodeName == "node") {
img = "<img src='images/T.gif'>";
if (i == nodes.length - 1) {
img = "<img src='images/L.gif'>";
}
readNode(nodes(i));
}
}
}
}
delete (xmlDoc);
window.left.innerHTML = HTML;
return;
}
function readTree(cI, sp) {
var nodes = cI.childNodes;
var menuHTML = img;
menuHTML += "<img src='images/";
menuHTML += cI.selectNodes("image")(0).text;
menuHTML += "'>";
menuHTML += "<a href='";
if (cI.selectNodes("link")(0).text != "") {
menuHTML += cI.selectNodes("link")(0).text;
} else {
menuHTML += "#";
}
if (cI.selectNodes("target")(0).text != "") {
menuHTML += "' target='" + cI.selectNodes("target")(0).text;
}
menuHTML += "' " + vid + "')";
menuHTML += " title='";
menuHTML += cI.selectNodes("title")(0).text;
menuHTML += "'>";
menuHTML += cI.selectNodes("text")(0).text;
menuHTML += "</a><br>\n";
HTML += menuHTML;
HTML += "<div + vid + "' style='display:none'>\n";
ImgArr[level] = "<img src='images/i.gif'>";
if (sp) {
ImgArr[level] = "<img src='images/white.gif'>";
}
for (var i = 0; i < nodes.length; i++) {
level++;
ImgArr[level] = "<img src='images/i.gif'>\n";
if (sp) {
ImgArr[level] = "<img src='images/white.gif'>\n";
}
img = "";
var tempImg = "";
for (var j = 0; j < level; j++) {
tempImg += ImgArr[j];
}
img = tempImg;
if (nodes(i).nodeName == "tree") {
vid++;
if (i == nodes.length - 1) {
img += "<img src='images/L+.gif' + vid + "' " + vid + "')>";
readTree(nodes(i), true);
} else {
img += "<img src='images/T+.gif' + vid + "' " + vid + "')>";
readTree(nodes(i), false);
}
img = "";
} else {
if (nodes(i).nodeName == "node") {
if (i == nodes.length - 1) {
img += "<img src='images/L.gif'>";
} else {
img += "<img src='images/T.gif'>";
}
readNode(nodes(i));
}
}
level--;
}
HTML += "</div>\n";
return;
}
function readNode(cI) {
//alert("ok");
var nodeHTML = img;
nodeHTML += "<img src='images/";
nodeHTML += cI.selectNodes("image")(0).text;
nodeHTML += "'>";
nodeHTML += "<a href='";
nodeHTML += cI.selectNodes("link")(0).text;
if (cI.selectNodes("target")(0).text != "") {
nodeHTML += "' target='" + cI.selectNodes("target")(0).text;
}
nodeHTML += "' title='";
nodeHTML += cI.selectNodes("title")(0).text;
nodeHTML += "'>";
nodeHTML += cI.selectNodes("text")(0).text;
nodeHTML += "</a><br>\n";
HTML += nodeHTML;
return;
}
function divshow(vid) {
if (document.all["div" + vid].style.display == "none") {
document.all["div" + vid].style.display = "";
document.all["f" + vid].src = document.all["f" + vid].src.replace("+", "-");
} else {
document.all["div" + vid].style.display = "none";
document.all["f" + vid].src = document.all["f" + vid].src.replace("-", "+");
}
return;
}
<?xml version="1.0" encoding="gb2312"?> <treeview> <tree > <text>通道管理</text> <target>workMain</target> <title>通道管理</title> <link>smsc.list</link> <image>tongdao.gif</image> <node> <text>通道列表</text> <target>workMain</target> <title>所有通道</title> <link>smsc.list</link> <image>list.gif</image> </node> <node> <text>添加通道</text> <target>workMain</target> <title>添加通道</title> <link>smsc.addtd</link> <image>html.gif</image> </node> </tree> <tree > <text>参数管理</text> <target>workMain</target> <title>参数管理</title> <link>smsc.manager</link> <image>sys.gif</image> <node> <text>系统设置</text> <target>workMain</target> <title>系统设置</title> <link>smsc.sysset</link> <image>html.gif</image> </node> <node> <text>通道设置</text> <target>workMain</target> <title>通道设置</title> <link>smsc.tdset</link> <image>html.gif</image> </node> </tree> <node> <text>权限管理</text> <target>workMain</target> <title>设置用户访问权限</title> <link>smsc.userAccess</link> <image>set.gif</image> </node> <tree > <text>插件管理</text> <target>workMain</target> <title>插件管理</title> <link>smsc.plugManager</link> <image>pulg.gif</image> <node> <text>编辑</text> <target>workMain</target> <title>编辑</title> <link>smsc.plugE</link> <image>html.gif</image> </node> <node> <text>插件平台</text> <target>workMain</target> <title>插件平台</title> <link>smsc.plugL</link> <image>html.gif</image> </node> </tree> <tree > <text>ctc021</text> <target>workMain</target> <title>ctc021管理</title> <link>smsc.sysset</link> <image>folder.gif</image> <node> <text>ctc021</text> <target>workMain</target> <title>ctc021</title> <link>smsc.main?name=ctc025</link> <image>html.gif</image> </node> <node> <text>ctc021日志</text> <target>workMain</target> <title>ctc021日志</title> <link>smsc.log?name=ctc021</link> <image>html.gif</image> </node> </tree> <tree > <text>cnc025</text> <target>workMain</target> <title>cnc025管理</title> <link>smsc.sysset</link> <image>folder.gif</image> <node> <text>cnc025</text> <target>workMain</target> <title>cnc025</title> <link>smsc.main?name=ctc025</link> <image>html.gif</image> </node> <node> <text>cnc025日志</text> <target>workMain</target> <title>cnc025日志</title> <link>smsc.log?name=ctc025</link> <image>html.gif</image> </node> </tree> <node> <text>修改管理员密码</text> <target>workMain</target> <title>修改管理员登录系统密码</title> <link>smsc.resetPassword</link> <image>set.gif</image> </node> </treeview>
发表评论
-
j托管JavaScript类库
2009-10-13 11:22 1302AJAX 库 API http://code.google. ... -
javascript日期相减
2009-09-28 13:25 3471<SCRIPT LANGUAGE="Jav ... -
做个在网页上实现像QQ一样当有新任务时声音提醒
2009-07-18 14:35 1717在做一个项目时,客户要求网页上具有声音提醒功能。就是让网页每2 ... -
多选列表值的移动和获取值
2009-06-02 14:07 1562一段简单的javascript实现多选列表值的移动和获取值 ... -
获得多项选择列表框的选中选项
2009-06-02 14:00 2377<form> <sele ... -
JS获取表格单元格
2009-05-06 13:52 3029var ccell = document.getElement ... -
获得select的option值
2009-04-27 09:38 2438<select name="opt&quo ... -
javaScript urlencode 推荐 encodeURICompon
2009-04-20 15:09 2033网上查到的全都是escape,和需要的编码不是一回事,好不容易 ... -
javaScript UrlEncode and UrlDecode
2009-04-20 10:52 3075<script language=" ... -
这就是个静态页面通过js控制mscomm对某com设备进行访问的例子.
2009-04-03 16:14 6403<html> <head> ... -
js调用ocx控件(读写IC卡)
2009-04-03 16:09 107621、注册OCX 开始--->cmd--->reg ... -
转换Unicode (JS)
2009-03-23 09:19 2403Encrypt = function() { var ... -
JS获取当前对象大小以及屏幕分辨率等
2009-03-22 14:47 5587<script>function getInf ... -
单选框控制表单的隐藏和显示
2009-03-17 17:01 3300<script type="text/ja ... -
支持IE6、IE7的关闭页面的函数
2009-03-17 16:40 1430function closeWin() { v ... -
获取各种浏览器可见窗口大小
2009-03-01 23:12 1397<!DOCTYPE HTML PUBLIC " ... -
JQueryInplaceEdit
2009-02-15 10:43 1349$(document).ready(function() ... -
checkbox 全选和取消全选
2009-02-14 22:33 1612<html> <head> ... -
JavaScript分割字符串
2009-01-19 16:26 5004<script language="javas ... -
框架标签
2009-01-12 10:54 1416主页面 <!DOCTYPE html PUBLIC ...
相关推荐
JavaScript 和 XML 结合实现的树形菜单是一种常见的前端交互设计,尤其在早期的网页开发中较为流行。在本文中,我们将深入探讨如何使用 JavaScript 解析 XML 文件并构建一个仅适用于 Internet Explorer 的树形菜单。...
- **层级结构**:元素可以嵌套,形成树形结构,适合表示菜单数据。 - **命名空间(Namespaces)**:避免标签冲突,特别是在集成多个数据源时。 - **DTD或XSD验证**:定义元素的约束,确保数据的正确性。 ### 3. JSP...
总之,"js+jsp树形菜单"是一个融合了前端与后端技术的实践,它展示了如何利用JavaScript和JSP协同工作,为用户提供交互性强、数据驱动的菜单界面。理解并掌握这一技术,对于Web开发者来说是非常有价值的。
在本文中,我们将探讨如何使用JavaScript操作XML文档来生成树形菜单。树形菜单是一种常见的用户界面元素,用于组织和展示层次结构的数据,如网站导航或文件系统。在这个例子中,我们将使用提供的XML数据来构建这样一...
JavaScript 和 XML 无线级树形菜单是一种常见的网页交互设计,用于组织和展示复杂的数据结构,尤其是在需要层次化数据展示的场合,例如网站导航、文件系统或者数据库结构等。本知识点将深入探讨如何利用 JavaScript ...
前端部分,`JavaScript`库如`JSTree`(压缩包中的`JSTREE`可能就是这个库的文件)提供了丰富的API和插件,使得在浏览器中生成和操作树形菜单变得简单。`JSTree`支持JSON和XML等多种数据源,与后端的Java接口完美对接...
"树形菜单Ajax实现"涉及到异步JavaScript和XML技术,Ajax允许在不刷新整个页面的情况下更新部分网页内容。在树形菜单中应用Ajax,意味着用户在点击节点时,可以通过Ajax请求后台数据,动态加载子节点,提高了用户...
首先,JavaScript 通常用于处理客户端的交互逻辑,例如控制树形菜单的展开和收缩。在描述中提到,大多数树形菜单的实现基于 CSS 的 `display` 属性,通过切换这个属性的值来控制元素的可见性。通过监听鼠标事件(如 ...
客户端收到JSON数据后,JavaScript解析这个响应,并使用DOM操作方法(如`document.createElement`,`appendChild`等)动态地将新的菜单项添加到已有的树状菜单中。这样,用户就可以看到菜单在无需刷新页面的情况下...
当我们需要在Web应用中实现树形菜单时,通常会结合这两个框架来完成。 树形菜单是一种常见的用户界面元素,它以层级结构展示数据,例如网站导航、文件系统或者组织架构。在Web应用中,用户可以通过点击展开或折叠...
JS树形菜单则是利用JavaScript语言实现的一种用户界面元素,用于展示层次结构数据,通常用在网站导航或文件目录结构展示。 这个“struts简单示例+js树形菜单”项目可能包含以下内容: 1. **Struts框架基础**: - ...
**jQuery 实现XML树形菜单**\n\n在网页开发中,树形菜单是一种常见的交互元素,用于组织和展示层次化的信息。jQuery 是一个广泛使用的JavaScript库,它提供了丰富的API来简化DOM操作,使得实现这样的功能变得更加...
ASP和JavaScript可以协同工作,用JSON或XML数据格式在服务器端构建菜单结构,然后通过JavaScript在客户端渲染成可交互的树形菜单。 6. AJAX(Asynchronous JavaScript and XML):尽管名称中有XML,但现代AJAX更多...
在标题和描述中提到的“利用javascript编写的树形菜单”是关于如何使用JavaScript实现这样的交互功能。 创建JavaScript树形菜单主要涉及以下几个关键知识点: 1. DOM操作:Document Object Model (DOM) 是HTML和...
总结来说,基于XML的树形菜单组件利用了XML的结构化特性,通过JavaScript进行解析和渲染,实现了动态、灵活的菜单系统。这样的组件对于网站或应用的导航至关重要,能有效提升用户的交互体验。在实际开发中,还需要...
JavaScript树形菜单是一种在网页中展示层次结构数据的交互式组件。它们通常用于网站的导航、文件目录浏览或数据组织。在这个压缩包中,我们有几种不同的JavaScript树形菜单实现,包括`dtree`和`dhtmlxtree`,以及...