2011-01-13 20 views
0

サーブレットリクエスト属性としてarrayListオブジェクトがいくつかあります。私はそれを私のJavaScriptの変数のJSPページに入れたいと思っています。私はこのようにしてみました。サーブレットからArrayListオブジェクトを取得し、AJAXを使用してjavascript配列変数として格納する

<script> 
var myList=<% (ArrayList)request.getParameter("list_name") %>; 

//do use of myList..... 

</script> 

しかし、これは動作していないabc.jsp

。私はデータを取得していません。

そして

var myList=<% =(ArrayList)request.getParameter("list_name") %>; 

didntの仕事を試みました!

事前に感謝..

+0

Thejsp変数は<%= ArrayListにはmyList =(ArrayListを)request.getParameter( "LIST_NAME")%>として宣言されなければならない試すことができます。 – palAlaa

+0

こんにちはアラ、お返事ありがとうございます。 – pkj

+0

確かに、私はこのような変数を宣言しています。これは、あなたが言っているように、これはjsp変数を宣言する通常の方法です。 <%= ArrayList myList =(ArrayList)request.getParameter( "list_name")%>。 – pkj

答えて

1

ArrayListtoString()方法が誤って望ましい結果を与えるだろうので、あなたは、単にvar myList = ${list_name};を使用することができます。しかし、2番目のスニペットの結果も機能するはずですので、リストをリクエスト属性として設定していないと仮定します。

は、あなたがいることを確認してください:

  • は、JSPにリダイレクトするのではなく、サーブレット前方使用
  • request.setAttribute("list_name", yourlist);と呼ばれます。

また[${fn:join(list_name, ',')}]

または

var myList = new Array(); 
<c:forEach items="${list_name}" var="item" varStatus="loop"> 
    myList[${loop.index}] = "${item}"; 
</c:forEach> 
関連する問題