页面部分
  <table width="100%" border="0" cellspacing="0" cellpadding="0">
        <#if messagelist != null>
         <#list messagelist as message>
           <div id="${message.id}_">
            <span style="height:30px;line-height:26px;margin-left:30px;">${message.title}</span>
      <div>
             <span style="height:30px;line-height:26px;margin-left:60px;">${message.content}</span>
             <a href="javascript:void(0);" onclick="javascript:showRDiv('${message.id}','${message.hydm}','${message.hyJc}','${message.id}');">回复</a>
             <#if membId==message.hydm>
             <a href="javascript:void(0);" onclick="deleteMessage(${message.id});">删除</a>
             </#if>
             <#if message.children != null>
              <#list message.children as messagel>
                 <#if messagel!= null>
                  <div id="${messagel.id}_">
                 <span style="height:30px;line-height:26px;margin-left:100px;">${messagel.hyJc}&nbsp;:@${messagel.hzJc}&nbsp;&nbsp;${messagel.content}</span>
                 <a href="javascript:void(0);" onclick="javascript:showRDiv('${message.id}','${messagel.hydm}','${messagel.hyJc}','${messagel.id}');">回复</a>
                 <#if membId==messagel.hydm>
                 <a href="javascript:void(0);" onclick="deleteMessage(${messagel.id});">删除</a>
                 </#if>
               </div>
                 </#if>
              </#list>
             </#if>
             <div id="${message.id}" style="margin-left:100px;display:none;">
              <textarea rows="4" cols="40"></textarea><br/>
              <input type="button" onclick="publish(${message.id},'${membId}','${userId}','${message.title}','${userBrief}');" value="发表" style="margin-left:300px;"/> 
             </div>
    </div>
           </div>
      </#list>
     </#if>
       </table>
jquery 代码
function publish(parentid,membid,userid,title,hyJc){
  var content = jQuery("#"+parentid+" > textarea").val();
  if(jQuery.trim(content).length<=0){
   alert("回复内容不能为空");
   return ;
  }
  /*
  方式1
  */
  buffalo.remoteCall("springLeaveMessageAjax.saveLeaveMessage", [title,content,hz,membid,userid,parentid,parseInt(mesid)], function(reply) {
   var result=reply.getResult();
   if(result != -1){
    jQuery("#"+parentid).prev().append(function(){
               return "<div id=\""+result+"_\"><span style=\"height:30px;line-height:26px;margin-left:100px;\">"+
       hyJc+"&nbsp;:@"+hzJc+"&nbsp;&nbsp;"+content+"</span>"+
       "&nbsp;<a href=\"javascript:void(0);\" onclick=\"showRDiv('"+parentid+"','"+membid+"','"+hyJc+"');\">回复</a>"+
       "&nbsp;<a href=\"javascript:void(0);\" onclick=\"deleteMessage("+result+");\">删除</a></div>";
    });
   }else{
    alert("回复失败,请重试");
   }
   jQuery("#"+parentid+" > textarea").val("");
   jQuery("#"+parentid).css("display","none");
  });想做一个留言的功能  但是  在对前一条留言回复的时候  用了jquery的prve方法 把新的回复  拼接在了上一条留言的删除标签下  造成了 我点击新留言的任何地方 都只会 触发钱一条留言的删除功能    这有什么好办法解决   有人说要对prve方法修改  求人解说jQueryJavaScript标签

解决方案 »

  1.   

     jQuery("#"+parentid).prev()你这个拿到的就是前一条留言的删除a标签用append,你把后面生成的回复都插入进了a标签里面去了用改成jQuery("#"+parentid).prev().after(function(){...})就可以了。
      

  2.   

    按你这样试了以后 还是不行  会在后台报一个错误
    Caused by: java.lang.NumberFormatException: For input string: "NaN"
    at java.lang.NumberFormatException.forInputString(Unknown Source)
    at java.lang.Long.parseLong(Unknown Source)
    at java.lang.Long.<init>(Unknown Source)
    ... 36 more
      

  3.   

     jQuery("#"+parentid).parent().parent().after(....);
      

  4.   

    使用下面的方法 可以回复留言 但是新回复的留言没有立即在页面上显示  再刷新一次后才会显示  这样有什么办法么
    jQuery("#"+parentid).next().before(function(){