2010-07-04 57 views
1

我的HTML看起来像这样:jQuery的岗位()JSP返回集合

<script type="text/javascript" src="jquery-1.4.2.js"></script> 
    <script type="text/javascript"> 
     $(document).ready(function(){ 
      $("#btn").click(function(){ 
       $.post("test.jsp", { "txt": $("#txt").val() }, 
       function(data){ 
        alert(data); 
        $("#res").html(data); 
       }); 
      }); 
     }); 

    </script> 

它发送的文本字段"txt"的值,然后我的JSP返回列表:

<% 
String str=request.getParameter("txt"); 
List ls=new ArrayList(); 
ls.add(str+"1"); 
ls.add(str+"2"); 
ls.add(str+"3"); 
ls.add(str+"4"); 
out.print(ls); 
%> 

我的问题是如何我可以逐个获取列表元素?类似。

回答

1

您需要返回一个有效的JSON字符串。您可以使用Java JSON库或者只是格式化字符串是有效的JSON(小心):

out.print('["'+str+'1", "'+str+'2"]'); 

然后变量data在JavaScript的回调将是这样的:["txt1", "txt2"]。然后你需要解析它,使它成为一个JavaScript可用的对象(我建议将'json'dataType附加到$ .post方法,它会为你解析)​​。您可以拨打。