如何从jsp中作为js函数中的参数传递的arraylist中获取值

时间:2017-01-18 06:52:02

标签: javascript jsp servlets

我有一个名为 Servlet 的命令,我发送一个带有Servlet请求属性的ArrayList到JSP。我从同一个JSP调用一个js函数,我将ArrayList作为参数传递给js函数。我想从此ArrayList中检索值。

代码如下:

<c:if test="${currentPage lt noOfPages}">   
    <a onclick="OnNextButtonClick(${currentPage},'${al}');">
       <Next>
    </a>
</c:if>   
   //Here al is the ArrayList

<script type="text/javascript"> 
function OnNextButtonClick(currentPage,al)
{
  alert("current page == " + currentPage );
  alert("current page == " + al);

  var arr = new Array();
  var arr = al.split(','); 
  alert(arr);
}

这个arr给我的价值如下:

[com.package@1def,com.package@fkbe23,com.package@546fhfg]

我想要存储在此位置的值。

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

首先列出obj = dao.listimpl();这是你粘贴的java代码,尝试粘贴你想要迭代的确切对象。

虽然我建议使用非常轻量级的JavaScript库Loadash,这非常方便,当你处理数组/对象并循环遍历这些项目和更多的util方法时。

_.forOwn(obj, function(value, key) { } );

Loadash - forOwn

迭代对象的自己的可枚举字符串键控属性,并为每个属性调用iteratee。使用三个参数调用iteratee:(value,key,object)。 Iteratee函数可以通过显式返回false

来提前退出迭代