比如一个页面有3个DIV:div1,div2,div3
div1一个是默认显示的
div2,div3默认隐藏,通过javascript来控制让其显示出来,也就是切换各个不同的DIV
如果切到div2或div3,然后修改数据,再重新绑定数据的时候,页面就会刷新,然后回到DIV1去
怎么才能在绑定完数据后然后自动切到原来的DIV上呢?
求教

解决方案 »

  1.   

    把DIV加个id和runat="server",然后后台C#代码控制。比如<div id="div1" runat="server">xxx</div>C#代码:div1.Style["display"]="none";//隐藏div1.Style["display"]="block";//显示
      

  2.   

    window.onload=function()  
    {  
      var div=document.getElementById("div1")  
      div.style.display=div.style.display=="none"?"block":"none";  
    }
    Page.RegisterStartUpScript("key",@"getElementById('div').style.display = 'none';")  <div id="div1" runat="Server">  </div>  
    div1.Style["Display"] = "Block"; //显示
    div1.Style["Display"] = "None"; //隐藏
      

  3.   

    可以通过css+div,然后一段简单的js,onmouseover,onmouseout
      

  4.   

    假如想 选项卡那种的话也  就 function changeMc(a,b){

    document.getElementById(a).style.display = "block";

    }
    else{
    document.getElementById(b).style.display = "none";
    }       传两个层的id进去就OK了     <a href="javascript:changeMc('a','b')">aa</a>
      

  5.   

    首先谢谢楼上的解决方法,不过貌似都不行
    不能加runat=“sever" ,这个要在客户端用,加runat=“sever",就切换不了
    浏览器上会宝javascript的错误<html xmlns="http://www.w3.org/1999/xhtml">
    <head id="Head1" runat="server">
        <title></title>
        <style type="text/css">
             .tagContent 
             {  DISPLAY: none;}
             #tagContent DIV.selectTag 
             {DISPLAY: block ;} 
             #tags LI { FLOAT: left;  }
        </style>
        <script type="text/javascript">
            function selectTag(showContent, selfObj) {
                // 操作标签
                var tag = document.getElementById("tags").getElementsByTagName("li");
                var taglength = tag.length;
                for (i = 0; i < taglength; i++) {
                    tag[i].className = "";
                }
                selfObj.parentNode.className = "selectTag";
                // 操作内容
                for (i = 0; j = document.getElementById("tagContent" + i); i++) {
                    j.style.display = "none";
                }
                document.getElementById(showContent).style.display = "block";
            }    </script>
    </head>
    <body><div id="con">
      <ul id="tags">
         <li class="selectTag"><a onclick="selectTag('tagContent0',this)"  href="javascript:void(0)">商品信息</a> </li>
            <li><a onclick="selectTag('tagContent1',this)" href="javascript:void(0)">分类</a>
            </li>
            <li><a onclick="selectTag('tagContent2',this)" href="javascript:void(0)">品牌</a>
            </li>
            <li><a onclick="selectTag('tagContent3',this)" href="javascript:void(0)">图片</a>
            </li>
            <li><a onclick="selectTag('tagContent4',this)" href="javascript:void(0)">属性</a>   
            </li>
            </ul>
            <br />
            <div id="tagContent0" class="tagContent" style="display: block;">
                ......选项卡0
            </div>
            <div id="tagContent1" class="tagContent">
                ....选项卡1
            </div>
            <div id="tagContent2" class="tagContent">
                ....选项卡2
            </div>
            <div id="tagContent3" class="tagContent">
                ....选项卡3
            </div>
        </div>
    </body>
    </html>
    如果在选项卡1中的控件中数据绑定时,页面就会刷新,然后自动切换到选项卡1,怎么才能做到每个选项卡中各自控件重新数据绑定时,自动切换到自己的选项卡上呢
      

  6.   

    如果你对AJAX比较熟就用 AJAX,
    否则,你要在提交数据时要记录是选了哪个div,最后加上ClientScript.RegisterStartupScript(GetType(), "", "selectTag('哪个div','哪个a')",true);而且 selectTag这个 JS要改动下才行。