AJAX实现web页面中级联菜单的设计

王朝other·作者佚名  2006-10-24
宽屏版  字体: |||超大  

看了大峡搞的级联菜单,我也班门弄斧一把,嘿嘿,花了一点时间搞了个级联菜单贴上来看看。本例中只要你选择成员分类名称就会自动显示成员名称:

首先在eclipse中建一个项目,名称你自己做主了,这里为Easyjf-menu,对应的浏览器页面代码为:

Easyjf-menu.jsp

<@page contentType=”text/html;charser=UTF-8” language=”java”%>

<head>

……..

</head>

<script language=”javascript”>

var XMLHttpReq;

var currentSort;

//创建xmlhttprequset对象

function createXMLHttpRequest(){

if(window.XMLHttpRequest){

XMLHttpReq=new XMLHttpRequest();

}

else if (window.ActiveXObject){

try{

XMlHttpReq=new ActiveXObject(“Msxml2.XMLHTTP”);

}catch(e){}

try{

XMLHttpRequest=new ActiveXObject(“Microsoft.XMLHTTP”);

}catch(e){}

}

}

//发送请求函数

function sendRequest(url){

createXMLHttpRequest();

XMLHttpReq.open(“GET”,url,true);

XMLHttpReq.onreadystatechange=processResponse;

XMLHttpReq.send(null);

}

//处理返回信息函数

function processResponse(){

if(XMLHttpRequest.readyState==4){

if(XMLHttpRequest.status==200){

updateMenu();

}else{alert(“您请求的页面有异常!”)}

}

}

//更新菜单函数

function updateMenu(){

var res=XMLHttpReq.responseXML.getElementIdByTagName(“res”);

var sunMenu=””;

for(var i=0;i<res.length;i++){

submenu=subMenu+res[1].fistChild.data+”<br>”;

}

currentSort.innerHTML=submenu;

}

//创建级联菜单

function showSubMenu(obj){

currentSort=document.getElementById(obj);

currentSort.parentNode.style.display=””;

sendRequest(“menu?sort=”+obj);

}

</script>

<b>EasyJF成员</b>

<a onClick=”onShowSubMenu(‘大峡’)”>大峡</a>

,该页面中提供了对应的菜单以供用户选择,用户选择菜单后,调用showSubMenu(‘XXX’)函数,其中参数用于传递用户所选菜单的标识信息到服务器以决定获取服务器的哪个在菜单内容,首先获得菜单的识别信息,再提交给Ajax,这里用innerHTML属性实现定位显示!

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有