DIV块的代码是用writer.AppendLine生成的,之后按条件循环了N次,所以它是没有定义ID的。writer.AppendLine("<div class='div_shade'>");//DIV样式阴影层
writer.AppendFormat("<div style='div1' onclick=\"openWindow('{0}');\">", url);
……
writer.AppendLine("</div>");
writer.AppendLine("</div>");function openWindow(url) 
  var ret = window.showModalDialog(url,window,'status:no;scroll:yes;dialogWidth:860px;dialogHeight:780px')
    if(ret=='OK'){
     /*
       对DIV进行局部刷新(只刷新这个被点击了的DIV)
       我看了一些JS局部刷新DIV的方法,都是通过innerHTML来,但是那个是要ID的。是不是可以获取被点的DIV的ClientID实现这个效果呢?还是有其他的办法,请大家帮忙给个办法~
     */
    }

解决方案 »

  1.   

    document.getElementById("<%DIV.ClientID%>").innerHTML="";
      

  2.   

    document.getElementById("<%=DIV.ClientID%>").innerHTML="";少了个=号
      

  3.   

    不太理解你说的“JS局部刷新DIV的方法,都是通过innerHTML来,但是那个是要ID的”是什么意思,查找元素的方法有很多啊,不一定需要通过id属性啊,比如:
    <div class="demo">DEMO</div>
    <script type="text/javascript">
    var obj = document.getElementsByTagName('div');
    for(var i = 0; i < obj.length; i ++) {
    if (obj[i].className == 'demo') {
    obj[i].onclick = function() {
    this.innerHTML = 'TEST';
    }
    }
    }
    </script>
      

  4.   

    不大行的通,那个DIV的代码比较混。
    中间有N多个值的,还有调用了后台的一些方法。
      

  5.   


    用getElementsByTagName我试过,不行的。里面会有很多DIV块,像小格子一样,每个DIV块会根据不同的情况显示不同颜色以及数据。现在用innerHTML估计不行,因为这个HTML的代码根本凑不出来……
      

  6.   

    思路很简单
    1,ajax 得到返回的文本,
    2,定位DOM,进行替换
    这两点如果你有麻烦,你可以来提高交流凑不出来只能说明你返回的数据和要刷新的东西不是直接匹配,那你想办法弄匹配就是了,
    这个别人没有你的数据结构和你要显示的样子,也没办法替你想,
    而且这个完全业务逻辑的东西,没有技术难点在里面,也不应该让别人帮你来弄