喜悦国际村 
» 游客:  注册 | 登录 | 搜索 | 统计 | 喜悦证交所 | 帮助

RSS 订阅当前论坛  

$5.95 Web Hosting     

上一主题 下一主题
     
标题: [问题] 请教关于javascript的一个问题  
 
zerofirecn (zerofirecn)
新手上路
Rank: 1
初级会员



UID 24616
精华 0
积分 15
帖子 58
金钱 15 喜悦币
威望 0
人脉 0
阅读权限 10
注册 2003-11-14
状态 离线
[广告]: Enom域名自助付费 自助注册 自助PUSH 主流域名COM等一律57.99元年
请教关于javascript的一个问题

下面为一个简单的列表,通过ajax技术得到数据
我是希望能够实现点击一下 显示内容,再点击后关闭
感觉形容的不是特别贴切,看下实际页面吧
http://www.zdns.cn/ajax/index.htm
问题如下:
1、第一次点击数据不出来,第二次后才会显示,后面就正常了
2、为什么我把<div id="menu_pos_1" style="display:"></div>放到<a href="javascript:void(0)" onClick="collapse_change('pos_1')">经理室</a>的下面显示的就乱套了呢
类似于这样http://www.zdns.cn/ajax/index1.htm

<script language="javascript">
        var http_request = false;
        function send_request(url){//初始化、指定处理函数、发送请求的函数
                http_request = false;
                //开始初始化XMLHttpRequest对象
                if(window.XMLHttpRequest){//Mozilla浏览器
                        http_request = new XMLHttpRequest();
                        if(http_request.overrideMimeType){//设置MIME类别
                                http_request.overrideMimeType("text/xml");
                        }
                }else if(window.ActiveXObject){//IE浏览器
                        try{
                                http_request = new ActiveXObject("Msxml2.XMLHTTP");
                        }catch(e){
                                try{
                                        http_request = new ActiveXObject("Microsoft.XMLHTTP");
                                }catch(e){}
                        }
                }
                if(!http_request){//异常,创建对象实例失败
                        window.alert("不能创建XMLHttpRequest对象实例");
                        return false;
                        }
                http_request.onreadystatechange = processRequest;
                //确定发送请求的方式和URL利益机是否同步执行下段代码
                http_request.open("GET",url,true);
                http_request.send(null);
        }
                //处理返回信息的函数
                function processRequest(){
                        if(http_request.readyState == 4){//判断对象状态
                                if(http_request.status == 200){//信息已经成功返回,开始处理信息
                                        document.getElementById(currentPos).innerHTML = http_request.responseText;
                                }else{//页面不正常
                                        alert("您所请求的页面有异常");
                                }
                        }
                }
                /*/显示部门下的岗位
                function showRoles(obj){
                        if(document.getElementById(obj).parentNode.style.display == "none"){
                                document.getElementById(obj).parentNode.style.display="";
                                document.getElementById(obj).innerHTML="正在读取数据……"
                                currentPos=obj;
                                send_request("sample2_2.jsp?playPos="+obj);
                        }else{
                                document.getElementById(obj).parentNode.style.display="none";
                        }*/

                function $(id) {
                        return document.getElementById(id);
                        }
                function collapse_change(menucount) {
                        if($('menu_' + menucount).style.display == 'none') {
                                $('menu_' + menucount).style.display = '';
                                $('menuimg_' + menucount).src = './menu_reduce.gif';
                        } else {
                                $('menu_' + menucount).style.display = 'none';
                                $('menu_' + menucount).innerHTML="正在读取数据……"
                                currentPos = 'menu_' + menucount;
                                send_request("sample2_2.php?playPos="+menucount);

                                $('menuimg_' + menucount).src = './menu_add.gif';
                        }
                }
                </script>
</HEAD>

<BODY>
<table width="200" border="0" cellspacing="0" cellpadding="0">
        <tr>
                <td height="20">
                        <a href="###" onclick="collapse_change('pos_1')"><img id="menuimg_pos_1" src="./menu_reduce.gif" border="0"/></a>
                        <div id="menu_pos_1" style="display:"></div>
                        <a href="javascript:void(0)" onClick="collapse_change('pos_1')">经理室</a>
                </td>
        </tr>
        <tr style="display:none">
                <td height="20" id="1"> </td>
        </tr>
        <tr>
                <td height="20">
                <a href="###" onclick="collapse_change('pos_2')"><img id="menuimg_pos_2" src="./menu_reduce.gif" border="0"/></a>
                <div id="menu_pos_2" style="display:"></div>
                <a href="javascript:void(0)" onClick="collapse_change('pos_2')">开发部</a></td>
        </tr>
        <tr style="display:none">
                <td height="20" id="2"> </td>
        </tr>
</table>
</BODY>
</HTML>
[ 本帖最后由 zerofirecn 于 2006-9-28 05:20 PM 编辑 ]
2006-9-28 05:15 PM#1
查看资料  发短消息  顶部
 
kuco
高级会员
Rank: 4
一半会员


UID 66126
精华 0
积分 954
帖子 962
金钱 907 喜悦币
威望 0
人脉 47
阅读权限 50
注册 2005-8-23
来自 上海
状态 离线
[广告]: 代充Paypal帐号美元
<script language="javascript">
        var http_request = false;
        function send_request(url){//初始化、指定处理函数、发送请求的函数
                http_request = false;
                //开始初始化XMLHttpRequest对象
                if(window.XMLHttpRequest){//Mozilla浏览器
                        http_request = new XMLHttpRequest();
                        if(http_request.overrideMimeType){//设置MIME类别
                                http_request.overrideMimeType("text/xml");
                        }
                }else if(window.ActiveXObject){//IE浏览器
                        try{
                                http_request = new ActiveXObject("Msxml2.XMLHTTP");
                        }catch(e){
                                try{
                                        http_request = new ActiveXObject("Microsoft.XMLHTTP");
                                }catch(e){}
                        }
                }
                if(!http_request){//异常,创建对象实例失败
                        window.alert("不能创建XMLHttpRequest对象实例");
                        return false;
                        }
                http_request.onreadystatechange = processRequest;
                //确定发送请求的方式和URL利益机是否同步执行下段代码
                http_request.open("GET",url,true);
                http_request.send(null);
        }
                //处理返回信息的函数
                function processRequest(){
                        if(http_request.readyState == 4){//判断对象状态
                                if(http_request.status == 200){//信息已经成功返回,开始处理信息
                                        document.getElementById(currentPos).innerHTML = http_request.responseText;
                                }else{//页面不正常
                                        alert("您所请求的页面有异常");
                                }
                        }
                }
                /*/显示部门下的岗位
                function showRoles(obj){
                        if(document.getElementById(obj).parentNode.style.display == "none"){
                                document.getElementById(obj).parentNode.style.display="";
                                document.getElementById(obj).innerHTML="正在读取数据……"
                                currentPos=obj;
                                send_request("sample2_2.jsp?playPos="+obj);
                        }else{
                                document.getElementById(obj).parentNode.style.display="none";
                        }*/

                function $(id) {
                        return document.getElementById(id);
                        }
                function collapse_change(menucount) {
                        if($('menu_' + menucount).style.display == 'none') {
                                $('menu_' + menucount).style.display = '';
                                $('menuimg_' + menucount).src = './menu_reduce.gif';
                                currentPos = 'menu_' + menucount;
                                send_request("sample2_2.php?playPos="+menucount);

                        } else {
                                $('menu_' + menucount).style.display = 'none';
                                $('menu_' + menucount).innerHTML="正在读取数据……"
                                $('menuimg_' + menucount).src = './menu_add.gif';
                        }
                }
                </script>
</HEAD>

<BODY>
<table width="200" border="0" cellspacing="0" cellpadding="0">
        <tr>
                <td height="20">
                        <a href="###" onclick="collapse_change('pos_1')"><img id="menuimg_pos_1" src="./menu_reduce.gif" border="0"/></a>
                        
                        <a href="javascript:void(0)" onClick="collapse_change('pos_1')">经理室</a>
                                                <div id="menu_pos_1" style="display:none"></div>
                </td>
        </tr>
        <tr style="display:none">
                <td height="20" id="1"> </td>
        </tr>
        <tr>
                <td height="20">
                <a href="###" onclick="collapse_change('pos_2')"><img id="menuimg_pos_2" src="./menu_reduce.gif" border="0"/></a>
                <a href="javascript:void(0)" onClick="collapse_change('pos_2')">开发部</a>
                                <div id="menu_pos_2" style="display:none"></div>
                                </td>
        </tr>
        <tr style="display:none">
                <td height="20" id="2"> </td>
        </tr>
</table>
</BODY>
</HTML>

[ 本帖最后由 kuco 于 2006-9-28 05:41 PM 编辑 ]




阿里妈妈再掀疯狂采购风,急召天下站长,新加入站点3天内一定采购!
2006-9-28 05:39 PM#2
查看资料  Blog  发短消息  顶部
 
zerofirecn (zerofirecn)
新手上路
Rank: 1
初级会员



UID 24616
精华 0
积分 15
帖子 58
金钱 15 喜悦币
威望 0
人脉 0
阅读权限 10
注册 2003-11-14
状态 离线
[推荐阅读] 没有小姐,找个女朋友行吗?
谢谢二楼的kuco兄弟咯:)
已经正常了:)
2006-9-28 05:55 PM#3
查看资料  发短消息  顶部
     


  可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题 | 开通个人空间  


 




Powered by Discuz! 6.1.0  © 2001-2010 Comsenz Inc.
Processed in 0.033125 second(s), 6 queries

(冀ICP备05009913号) 管理员:sadly 邮箱/MSN: sadly@phpx.com QQ:824008(长隐) 清除 Cookies - - Archiver - WAP