js如何接收处理后台传来的list
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js如何接收处理后台传来的list相关的知识,希望对你有一定的参考价值。
list<String>从后台传来,如何在js里接收并处理为数组,页面只能用el表达式接收数据
List数据,从java后台传至js中接收的方法:
新建bean类
public class Test
private int Id;
public int getId()
return Id;
public void setId(int id)
Id = id;
2.再建返回List<Bean类>的java方法
public List<Test> list()
Test t=new Test();
t.setId(1);
List<Test> list = new ArrayList<Test>();
list.add(t);
return list;
3.配置web.xml——补加导入dwr配置的代码
<servlet>
<servlet-name>dwr-invoker</servlet-name> <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
4.配置dwr.xml——creator+concert
<allow>
<create creator="new" javascript="service">
<param name="class" value="com.telek.dwr.Service" />
</create>
<convert converter="bean" match="com.telek.dwr.Test">
<param name="include" value="id"/>
</convert>
</allow>
5.js文件中正确接收
function callBackHello(data)
alert(data[0].id);
function testList()
service.list(callBackHello);
参考技术A 事情:从java后台返回List类型数据,用于界面显示。但js中想获取它并操作它。直接使用EL表达式,js把它识别成字符串了。不是我想要的啊。。网上搜了搜大家的解决方案最好的当然是把List集合转成json格式传到界面上。这样js里面操作也简单,页面也没有影响。解决:将List转成json,传到界面。js中使用vararr=eval(‘$list');将list转成js数组。我的代码:复制代码代码如下:varkeyList=eval('$keysList');varvalues=$("#paramsValues").val();varnoSet=[];for(vari=0;i 参考技术B 事情:从java后台返回List<String>类型数据,用于界面显示。但js中想获取它并操作它。直接使用EL表达式,js把它识别成字符串了。不是我想要的啊。。网上搜了搜大家的解决方案...最好的当然是把List集合转成json格式传到界面上。这样js里面操作也简单,页面也没有影响。
解决:
将List<String> 转成json,传到界面。js中使用var arr = eval(‘$list');将list转成js数组。
我的代码:
复制代码代码如下:
var keyList = eval('$keysList');
var values = $("#paramsValues").val();
var noSet = [];
for(var i=0;i<keyList.length;i++)
if(values.indexOf(keyList[i])==-1)
noSet.push(keyList[i]);
参考技术C 将List<String> 转成json,传到界面。js中使用var arr = eval(‘$list');将list转成js数组。
我的代码:
复制代码代码如下:
var keyList = eval('$keysList');
var values = $("#paramsValues").val();
var noSet = [];
for(var i=0;i<keyList.length;i++)
if(values.indexOf(keyList[i])==-1)
noSet.push(keyList[i]);
参考技术D java代码:
JSONObject.valueToString(list) 传到页面
js代码
var haha = eval('$list ');
如何在js里面处理后台传来的json,并显示在页面上
参考技术A 使用jQuery就可以了返回值:String jQuery.parseJSON(json)
概述
接受一个JSON字符串,返回解析后的对象。
传入一个畸形的JSON字符串会抛出一个异常。比如下面的都是畸形的JSON字符串:
test: 1 ( test 没有包围双引号)
'test': 1 (使用了单引号而不是双引号)
另外,如果你什么都不传入,或者一个空字符串、null或undefined,parseJSON都会返回 null 。追问
如果不用JQuery呢?
追答var data = eval('(' + data + ')'); // change the JSON string to javascript object
本回答被提问者采纳以上是关于js如何接收处理后台传来的list的主要内容,如果未能解决你的问题,请参考以下文章
springmvc接收前台(如ajax)传来的数组list,set等图文详解