我的HTML看起来像这样:
<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返回List:
<%
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);
%>
我的问题是如何逐个获取列表元素?类似于data[1]
。
答案 0 :(得分:1)
您需要返回有效的JSON字符串。您可以使用Java JSON库,也可以将字符串格式化为有效的JSON(注意):
out.print('["'+str+'1", "'+str+'2"]');
然后,您的JavaScript回调中的变量data
将类似于:["txt1", "txt2"]
。然后你需要解析它以使它成为一个JavaScript可用的对象(我建议将'json'dataType附加到$ .post方法,它会为你解析。)
此时您可以拨打data[1]
。