json和el表达式的注意点

1、el表达式里不能放js变量,所以需要循环遍历el表达式的集合,在<script>标签外用<c:forEach>遍历,赋给另一个数组。

<script type="text/javascript">
        var ids = new Array();
    var names = new Array();
    </script>
    <c:forEach items="${list}" var="t">
        <script type="text/javascript">
            ids.push("${t.id}");
            names.push("${t.name}");
        </script>
    </c:forEach>

2、前台将集合对象封装成json字符串,以键值对的形式赋给数组,再通过JSON.stringify(数组)转化成json字符串;

var array = new Array();
    for(var i=0;i<count;i++){
        var ts={"id":"","name": ""};
        ts.id=ids[i];
        ts.name=names[i];
        array[i]=ts;
    }
var str = JSON.stringify(array);
$.ajax({
        url:'',
            type:'post',
            data:{
                list:str    //传给后台的json字符串
                },
            success:function(){}
});

假设集合里的数据是:
{Goods [id=1,name=abc],Goods [id=2,name=def]} //Goods是一个对象
那么得到的json字符串是:[{“id”:”1”,”name”:”abc”},{“id”:”2”,”name”:”def”}]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值