一个prototype的问题,怎么把struts2后台的List通过json显示到前台

<script type="text/javascript" src="js/prototype1.6.js"></script>
 <script type="text/javascript">
 function WriteMessage(){
   new Ajax.Request(
    "msgs.do",
    {
     method:"get",
     parameters:{content:$F("content")},
     onSuccess:function(req){
      var list = req.responseText.evalJSON();
      for(i=0;i<list.length;i++){
      var tr = $("msg").insertRow($("msg").rows.length);
      tr.style.color="red";
      var id_td = tr.insertCell(tr.cells.length);
      id_td.innerHTML = list[i].id;
      var content_td = tr.insertCell(tr.cells.length);
      content_td.innerHTML = list[i].content; 
    }
     }
    }
   );
  } 
</script>

 

我这样写 可以 onSuccess里面的东西没有执行啊,还有怎么把list的数据显示出来啊(这个List里存放的是Message的对象)。

你可以在回调函数里面最前面加一个alert,明确知道它是否没调用。如果没有alert处理,那说明回调函数未调用,再用Firebug跟踪prototype的源码,看看具体哪里出了问题。

你WriteMessage函数在哪里调用的?

请求是否真的已经发起,Action里的方法是否执行到了?

[quote]
我加过alert了,确实没有调用。找了好久找不出问题所在。
[/quote]
在Firebug设断点调试一下。