我在做一个论坛时利用logic:iterate标签把主题贴的跟贴都循环取出放在了一个层里显示
现在要在被循环显示的层里放各自不同的信息( $("div_level").innerHTML=图片.gif  )要怎么获取该层的id?因为我每个层的id循环后都叫同一个名字,但现在这样写就全把图片放同一个层中了....麻烦各位帮帮忙
以下是部分代码:
-----------------JavaScript-----------
<script type="text/javascript">
var comments=0;
function level(level){
//alert("等级"+level);
alert("循环次数"+comments);
for(var a=0;a<=level;a++){
$('Div_UserLevel').innerHTML+="<img src='Image/bbs_default/star_level1.gif'/>";
}
}
</script>-----------------页面------------------
<logic:iterate id="comList" indexId="index" name="cList" type="com.hibernate.BbsComments">
<tr>
   <td height="303" colspan="2" valign="top"><div id="DivBbs_context">    
    <table width="100%" border="0" cellpadding="0" cellspacing="0" class="Layer_table">
<tr>
     <td height="300" colspan="2" valign="top">
     <div id="Layer1"><table width="100%" border="0">
     <tr>
     <td colspan="2"><bean:write name="comList" property="userInfo.userName"/></td></tr>
            <tr>
             <td colspan="2"><img src='<bean:write name="comList" property="userInfo.userHead"/>'/></td></tr>
             <script>
             comments++;
             level("<bean:write name="comList" property="userInfo.level"/>");
             </script>
            <tr>
              <td>级别:</td>
                      <td><div id="Div_UserLevel"></div></td></tr>
            <tr>
              <td>主题:</td>
                      <td><bean:write name="comList" property="userInfo.article"/></td></tr>

解决方案 »

  1.   

    方式方法不对,帖子表应该把你图片的路径作为一个字段,或者同内容存放在一起,通过java读取数据,放置到你的bean里面在<logic:iterate id="comList" indexId="index" name="cList" type="com.hibernate.BbsComments"> 
    循环里面显示你的bean,
    <bean:write name="comList" property="userInfo.img"/> 
      

  2.   

    用户等级的字段用图片路径去保存?那如果
    用户等级为1字段为
    <img src='Image/XXXXXX/xxx.gif'>
    等级2为
    <img src='Image/XXXXXX/xxx.gif'><img src='Image/XXXXXX/xxx.gif'>
    等级3为
    <img src='Image/XXXXXX/xxx.gif'><img src='Image/XXXXXX/xxx.gif'><img src='Image/XXXXXX/xxx.gif'>
    这样吗?这样好象不太好吧?我的用户等级是用int类型保存的,当等级为1时图片插入1次,等级为2时图片插入2次如此类推,问题是放图片的Div层被循环后ID都一样了,所以图片全被插入第一个层后面的全部没放进去
      

  3.   

    <logic:iterate id="comList" indexId="index" name="cList" type="com.hibernate.BbsComments"> <% String Id=a+index;  %><div id="Id">这样循环出来的DIV的ID就不是一样的了!a1,a2,a3等等。    
      

  4.   

    上面的方法试过了还是不行
    -----------------------------------
    function level(level){
    //alert("等级"+level);
    //alert("循环次数"+comments);
    for(var a=0;a<=level;a++){
    var divId='Div_UserLevel'+comments;
    if(divId=='Div_UserLevel1'){
    alert("123");
    }
    document.getElementById(divId).innerHTML+="<img src='Image/bbs_default/star_level1.gif'/>";
    }
    }
    -----------------------------------
    上面这段代码执行会弹出提示"123"就是说明这两个字符传是相等的
    但很奇怪document.getElementById(divId)这样写时不会在Div_UserLevel这个层了插入图片
    而如果我直接document.getElementById('Div_UserLevel1')这样写就会插入图片,为什么?又应该如何解决?这段代码和上面提问的代码直接关连
      

  5.   

    上面var divId 忘了写出来,但修改后还是不行
    -----------
    function level(level){
    //alert("等级"+level);
    //alert("循环次数"+comments);
    var divId;
    for(var a=0;a<=level;a++){
    divId='Div_UserLevel'+comments;
    if(divId=='Div_UserLevel1'){
    alert("123");
    }
    document.getElementById(divId).innerHTML+="<img src='Image/bbs_default/star_level1.gif'/>";
    }
    }