这个是显示隐藏DIV 我从网上找的。为什么放入ListBox控件不显示呢?后来发现只要放能编辑的框都不显示 。
代码哪出错了 怎么改??各位大虾帮帮。  代码如下:<head runat="server">
    <title>无标题页</title>
    <style type="text/css">
<!--
* {
padding:0;
margin:0;
}
#upcontent {
list-style-position: outside;
list-style-image: none;
list-style-type: none;
}
#upcontent li {
font-size:12px;
color:#333;
line-height:150%;
}
#bodyL {
float:left;
width:84px;
margin-right:2px;
}
#tittleup {
font-size:14px;
font-weight:bold;
color:#000066;
padding-left:25px;
border-bottom-width: 1px;
border-bottom-style: solid;
border-bottom-color: #d0daec;
margin-bottom: 10px;
padding-bottom: 10px;
}
a.od {
float:right;
font-size:14px;
color: #CC0000;
text-decoration: none;
}
a.od:hover {
color:#FF0000;
}
#fd {
background:#EDF1F8;
border: 2px solid #849BCA;
margin-top:2px;
margin-left:2px;
float:left;
overflow:hidden;
position:absolute;
left:0px;
top:0px;
cursor:move;
float:left;/*filter:alpha(opacity=50);*/
z-index: 10;
}
.contentup {
padding:20px;
}
}
-->
</style>
</head>
<body>
    <form id="form1" runat="server" style="text-align:center">
        <div id="bodyL">
            <input id="Button1" type="button" value="button" onclick="show('fd',event);return false;" />
        </div>
        <div id="fd" style="display: none; left: 0px; width: 517px; top: 24px; height: 300px;">
            <div class="contentup">
                <a href="#" class="od" onclick="closeed('fd');return false;">关 闭 </a>
                <div id="tittleup">
                    请选择</div>
                    <table style="text-align:center; width:100%">
                    <tr>
                    <td>
                <asp:ListBox ID="ListBox1" runat="server" Height="187px" Width="105px"></asp:ListBox>
                <asp:ListBox ID="ListBox2" runat="server" Height="187px" Width="105px"></asp:ListBox>
                <asp:ListBox ID="ListBox3" runat="server" Height="187px" Width="105px"></asp:ListBox>&nbsp;
            </td>
            </tr>
            </table>
            </div>
            <asp:Button ID="Button2" runat="server" Text="Button" /></div>
    </form>    <script type="text/javascript">
    var prox;
    var proy;
    var proxc;
    var proyc;
var isIe=(document.all)?true:false;
function setSelectState(state)
{
var objl=document.getElementsByTagName('select');
for(var i=0;i<objl.length;i++)
{
objl[i].style.visibility=state;
}
}
function mousePosition(ev)
{
if(ev.pageX || ev.pageY)
{
return {x:ev.pageX, y:ev.pageY};
}
return {
x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,y:ev.clientY + document.body.scrollTop - document.body.clientTop
};
}
//关闭窗口
function closeWindow()
{
if(document.getElementById('back')!=null)
{
document.getElementById('back').parentNode.removeChild(document.getElementById('back'));
}
if(document.getElementById('mesWindow')!=null)
{
document.getElementById('mesWindow').parentNode.removeChild(document.getElementById('mesWindow'));
}
if(isIe){
setSelectState('');}
}
    function show(id,ev){/*--打开--*/
closeWindow();
var bWidth=parseInt(document.documentElement.scrollWidth);
var bHeight=parseInt(document.documentElement.scrollHeight)<592?592:parseInt(document.documentElement.scrollHeight);
if(isIe){
setSelectState('hidden');}
var back=document.createElement("div");
back.id="back";
var styleStr="top:0px;left:0px;position:absolute;background:#666;width:"+bWidth+"px;height:"+bHeight+"px;";
styleStr+=(isIe)?"filter:alpha(opacity=40);":"opacity:0.40;";
back.style.cssText=styleStr;
document.body.appendChild(back);

        clearInterval(prox);
        clearInterval(proy);
        clearInterval(proxc);
        clearInterval(proyc);
        var o = document.getElementById(id);
        o.style.display = "block";
        o.style.width = "1px";
        o.style.height = "1px"; 
        prox = setInterval(function(){openx(o,500)},10);

    }    
    function openx(o,x){/*--打开x--*/
        var cx = parseInt(o.style.width);
        if(cx < x)
        {
            o.style.width = (cx + Math.ceil((x-cx)/5)) +"px";
        }
        else
        {
            clearInterval(prox);
            proy = setInterval(function(){openy(o,300)},10);
        }
    }    
    function openy(o,y){/*--打开y--*/    
        var cy = parseInt(o.style.height);
        if(cy < y)
        {
            o.style.height = (cy + Math.ceil((y-cy)/5)) +"px";
        }
        else
        {
            clearInterval(proy);            
        }
    }    
    function closeed(id){/*--关闭--*/
closeWindow();
        clearInterval(prox);
        clearInterval(proy);
        clearInterval(proxc);
        clearInterval(proyc);        
        var o = document.getElementById(id);
        if(o.style.display == "block")
        {
            proyc = setInterval(function(){closey(o)},10);            
        }        
    }    
    function closey(o){/*--打开y--*/    
        var cy = parseInt(o.style.height);
        if(cy > 0)
        {
            o.style.height = (cy - Math.ceil(cy/5)) +"px";
        }
        else
        {
            clearInterval(proyc);                
            proxc = setInterval(function(){closex(o)},10);
        }
    }    
    function closex(o){/*--打开x--*/
        var cx = parseInt(o.style.width);
        if(cx > 0)
        {
            o.style.width = (cx - Math.ceil(cx/5)) +"px";
        }
        else
        {
            clearInterval(proxc);
            o.style.display = "none";
        }
    }    
    
    
    /*-------------------------鼠标拖动---------------------*/    
    var od = document.getElementById("fd");    
    var dx,dy,mx,my,mouseD;
    var odrag;
    var isIE = document.all ? true : false;
    document.onmousedown = function(e){
        var e = e ? e : event;
        if(e.button == (document.all ? 1 : 0))
        {
            mouseD = true;            
        }
    }
    document.onmouseup = function(){
        mouseD = false;
        odrag = "";
        if(isIE)
        {
            od.releaseCapture();
            od.filters.alpha.opacity = 100;
        }
        else
        {
            window.releaseEvents(od.MOUSEMOVE);
            od.style.opacity = 1;
        }        
    }
    
    
    //function readyMove(e){    
    od.onmousedown = function(e){
        odrag = this;
        var e = e ? e : event;
        if(e.button == (document.all ? 1 : 0))
        {
            mx = e.clientX;
            my = e.clientY;
            od.style.left = od.offsetLeft + "px";
            od.style.top = od.offsetTop + "px";
            if(isIE)
            {
                od.setCapture();                
                od.filters.alpha.opacity = 50;
            }
            else
            {
                window.captureEvents(Event.MOUSEMOVE);
                od.style.opacity = 0.5;
            }
            
            //alert(mx);
            //alert(my);
            
        } 
    }
    document.onmousemove = function(e){
        var e = e ? e : event;
        
        //alert(mrx);
        //alert(e.button);        
        if(mouseD==true && odrag)
        {        
            var mrx = e.clientX - mx;
            var mry = e.clientY - my;    
            od.style.left = parseInt(od.style.left) +mrx + "px";
            od.style.top = parseInt(od.style.top) + mry + "px";            
            mx = e.clientX;
            my = e.clientY;
            
        }    }
function showBackground(obj,endInt)
{
obj.filters.alpha.opacity+=1;
if(obj.filters.alpha.opacity<endInt)
{
setTimeout(function(){showBackground(obj,endInt)},8);
}
}
    </script></body>
</html>

解决方案 »

  1.   

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    这些就是全部前台代码了:(
      

  2.   

    结果就是一个button,然后报脚本错误?
      

  3.   

    把JS代码放在头部<head>与</head>之间
      

  4.   

    放在后面也不错吧,反而放在 <head>与 </head>之间鼠标就不能拖动那个<div>框了
      

  5.   

    试好了,原来是CSS的问题
    #fd {
        background:#EDF1F8;
        border: 2px solid #849BCA;
        margin-top:2px;
        margin-left:2px;
        float:left;
        overflow:hidden;
        position:absolute;
        left:0px;
        top:0px;
        cursor:move;
        float:left;
        filter:alpha(opacity=50);/*注意这个不能注释掉*/
        z-index: 10;
    }
      

  6.   

    ff好像没问题
    ie有问题,od.filters.alpha.opacity = 100之类的不能用,还有ListBox控件不能显示://有调用这函数把ListBox控件都隐藏了,当然不显示(这控制对ff无效,所以ff能看的见)
    //调用setSelectState("hidden")
    function setSelectState(state)
    {
        var objl=document.getElementsByTagName('select');
        for(var i=0;i<objl.length;i++)
        {
          objl[i].style.visibility=state;
        }
    }
      

  7.   

    原本有JS的错误,去掉原来CSS里的注释就可以
    现在可以显示和拖动层
     filter:alpha(opacity=50);/*这个滤镜必须得有才正确*/
      

  8.   

    filter:alpha(opacity=50);/*注意这个不能注释掉*/
    加上也不对哦 这句好像是设置透明度的哦。
    试好了,代码贴出来看看。。
      有这样类似的贴代码共享下也行哦
      

  9.   

    <!--
    * {
        padding:0;
        margin:0;
    }
    #upcontent {
        list-style-position: outside;
        list-style-image: none;
        list-style-type: none;
    }
    #upcontent li {
        font-size:12px;
        color:#333;
        line-height:150%;
    }
    #bodyL {
        float:left;
        width:84px;
        margin-right:2px;
    }
    #tittleup {
        font-size:14px;
        font-weight:bold;
        color:#000066;
        padding-left:25px;
        border-bottom-width: 1px;
        border-bottom-style: solid;
        border-bottom-color: #d0daec;
        margin-bottom: 10px;
        padding-bottom: 10px;
    }
    a.od {
        float:right;
        font-size:14px;
        color: #CC0000;
        text-decoration: none;
    }
    a.od:hover {
        color:#FF0000;
    }
    #fd {
        background:#EDF1F8;
        border: 2px solid #849BCA;
        margin-top:2px;
        margin-left:2px;
        float:left;
        overflow:hidden;
        position:absolute;
        left:0px;
        top:0px;
        cursor:move;
        float:left;
        filter:alpha(opacity=50);
        z-index: 10;
    }
    .contentup {
        padding:20px;
    }
    }
    -->
    </style>
    </head>
    <body>
        <form id="form1" runat="server" style="text-align:center">
            <div id="bodyL">
                <input id="Button1" type="button" value="button" onclick="show('fd',event);return false;" />
            </div>
            <div id="fd" style="display: none; left: 0px; width: 517px; top: 24px; height: 300px;">
                <div class="contentup">
                    <a href="#" class="od" onclick="closeed('fd');return false;">关 闭 </a>
                    <div id="tittleup">
                        请选择</div>
                        <table style="text-align:center; width:100%">
                        <tr>
                        <td>
                    <asp:ListBox ID="ListBox1" runat="server" Height="187px" Width="105px"></asp:ListBox>
                    <asp:ListBox ID="ListBox2" runat="server" Height="187px" Width="105px"></asp:ListBox>
                    <asp:ListBox ID="ListBox3" runat="server" Height="187px" Width="105px"></asp:ListBox>&nbsp;
                </td>
                </tr>
                </table>
                </div>
                <asp:Button ID="Button2" runat="server" Text="Button" /></div>
        </form>    <script type="text/javascript">
        var prox;
        var proy;
        var proxc;
        var proyc;
        var isIe=(document.all)?true:false;
        function setSelectState(state)
    {
    var objl=document.getElementsByTagName('select');
    for(var i=0;i<objl.length;i++)
    {
    objl[i].style.visibility=state;
    }
    }
    function mousePosition(ev)
    {
    if(ev.pageX || ev.pageY)
    {
    return {x:ev.pageX, y:ev.pageY};
    }
    return {
    x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,y:ev.clientY + document.body.scrollTop - document.body.clientTop
    };
    }
    //关闭窗口
    function closeWindow()
    {
    if(document.getElementById('back')!=null)
    {
    document.getElementById('back').parentNode.removeChild(document.getElementById('back'));
    }
    if(document.getElementById('mesWindow')!=null)
    {
    document.getElementById('mesWindow').parentNode.removeChild(document.getElementById('mesWindow'));
    }
    if(isIe){
    setSelectState('');}
    }
        function show(id,ev){/*--打开--*/
        closeWindow();
        var bWidth=parseInt(document.documentElement.scrollWidth);
        var bHeight=parseInt(document.documentElement.scrollHeight)<592?592:parseInt(document.documentElement.scrollHeight);
        if(isIe){
        setSelectState('hidden');}
        var back=document.createElement("div");
        back.id="back";
        var styleStr="top:0px;left:0px;position:absolute;background:#666;width:"+bWidth+"px;height:"+bHeight+"px;";
        styleStr+=(isIe)?"filter:alpha(opacity=40);":"opacity:0.40;";
        back.style.cssText=styleStr;
        document.body.appendChild(back);
        
            clearInterval(prox);
            clearInterval(proy);
            clearInterval(proxc);
            clearInterval(proyc);
            var o = document.getElementById(id);
            o.style.display = "block";
            o.style.width = "1px";
            o.style.height = "1px"; 
            prox = setInterval(function(){openx(o,500)},10);
            
        }    
        function openx(o,x){/*--打开x--*/
            var cx = parseInt(o.style.width);
            if(cx < x)
            {
                o.style.width = (cx + Math.ceil((x-cx)/5)) +"px";
            }
            else
            {
                clearInterval(prox);
                proy = setInterval(function(){openy(o,300)},10);
            }
        }    
        function openy(o,y){/*--打开y--*/    
            var cy = parseInt(o.style.height);
            if(cy < y)
            {
                o.style.height = (cy + Math.ceil((y-cy)/5)) +"px";
            }
            else
            {
                clearInterval(proy);            
            }
        }    
        function closeed(id){/*--关闭--*/
        closeWindow();
            clearInterval(prox);
            clearInterval(proy);
            clearInterval(proxc);
            clearInterval(proyc);        
            var o = document.getElementById(id);
            if(o.style.display == "block")
            {
                proyc = setInterval(function(){closey(o)},10);            
            }        
        }    
        function closey(o){/*--打开y--*/    
            var cy = parseInt(o.style.height);
            if(cy > 0)
            {
                o.style.height = (cy - Math.ceil(cy/5)) +"px";
            }
            else
            {
                clearInterval(proyc);                
                proxc = setInterval(function(){closex(o)},10);
            }
        }    
        function closex(o){/*--打开x--*/
            var cx = parseInt(o.style.width);
            if(cx > 0)
            {
                o.style.width = (cx - Math.ceil(cx/5)) +"px";
            }
            else
            {
                clearInterval(proxc);
                o.style.display = "none";
            }
        }    
        
        
        /*-------------------------鼠标拖动---------------------*/    
        var od = document.getElementById("fd");    
        var dx,dy,mx,my,mouseD;
        var odrag;
        var isIE = document.all ? true : false;
        document.onmousedown = function(e){
            var e = e ? e : event;
            if(e.button == (document.all ? 1 : 0))
            {
                mouseD = true;            
            }
        }
        document.onmouseup = function(){
            mouseD = false;
            odrag = "";
            if(isIE)
            {
                od.releaseCapture();
                od.filters.alpha.opacity = 100;
            }
            else
            {
                window.releaseEvents(od.MOUSEMOVE);
                od.style.opacity = 1;
            }        
        }
        
        
        //function readyMove(e){    
        od.onmousedown = function(e){
            odrag = this;
            var e = e ? e : event;
            if(e.button == (document.all ? 1 : 0))
            {
                mx = e.clientX;
                my = e.clientY;
                od.style.left = od.offsetLeft + "px";
                od.style.top = od.offsetTop + "px";
                if(isIE)
                {
                    od.setCapture();                
                    od.filters.alpha.opacity = 50;
                }
                else
                {
                    window.captureEvents(Event.MOUSEMOVE);
                    od.style.opacity = 0.5;
                }
                
                //alert(mx);
                //alert(my);
                
            } 
        }
        document.onmousemove = function(e){
            var e = e ? e : event;
            
            //alert(mrx);
            //alert(e.button);        
            if(mouseD==true && odrag)
            {        
                var mrx = e.clientX - mx;
                var mry = e.clientY - my;    
                od.style.left = parseInt(od.style.left) +mrx + "px";
                od.style.top = parseInt(od.style.top) + mry + "px";            
                mx = e.clientX;
                my = e.clientY;
                
            }    }
    function showBackground(obj,endInt)
    {
    obj.filters.alpha.opacity+=1;
    if(obj.filters.alpha.opacity<endInt)
    {
    setTimeout(function(){showBackground(obj,endInt)},8);
    }
    }
        </script></body>
    </html>
      

  10.   

    #fd {
        background:#EDF1F8;
        border: 2px solid #849BCA;
        margin-top:2px;
        margin-left:2px;
        float:left;
        overflow:hidden;
        position:absolute;
        left:0px;
        top:0px;
        cursor:move;
        float:left;
        filter:alpha(opacity=50);
        z-index: 10;
    }
      

  11.   

    if(isIe){ setSelectState('');} 
    if(isIe){ setSelectState('hidden');} 
    不知道是实现啥效果的,去掉试试.. 
      

  12.   

    12楼去掉那个 运行的时候本来提示有错误警告,加上警告就没了。
    但是还是不显示ListBox
     
      

  13.   

    主要是用了setSelectState这个函数的问题,
    这个会把listbox隐藏掉,用到函数的地方注释掉就可以了
        if(isIe){
        //setSelectState('hidden');
        }