使用Javascript访问ArrayList的特定成员

使用Javascript访问ArrayList的特定成员,javascript,jquery,Javascript,Jquery,因此,我在jsp页面中有一个表,它显示了通过转发到页面的ArrayList从数据库获取的数据。表的每一行都有一个对应的单选按钮。现在,我想通过选择相应的单选按钮访问ArrayList成员所在行中的元素,然后单击“编辑”按钮 任何关于如何实现这一目标的想法都将不胜感激。这是我的代码,介绍一下 <% ArrayList<requestbean> reqjsp = new ArrayList<requestbean>(); reqjsp = (ArrayLi

因此,我在jsp页面中有一个表,它显示了通过转发到页面的ArrayList从数据库获取的数据。表的每一行都有一个对应的单选按钮。现在,我想通过选择相应的单选按钮访问ArrayList成员所在行中的元素,然后单击“编辑”按钮 任何关于如何实现这一目标的想法都将不胜感激。这是我的代码,介绍一下

<% 
   ArrayList<requestbean> reqjsp = new ArrayList<requestbean>();
   reqjsp = (ArrayList<requestbean>) (request.getAttribute("reqdb"));
%>

<script type ="text/javascript">
   function x() {
      var ele = document.getElementsByName('reqradio');
      var i = ele.length;
      for ( var j = 0; j < i; j++ ) {
         if ( ele[j].checked ) {
             document.getElementById("edireq").disabled = false;
             alert('request ' + ( j + 1 ) + ' selected');
             //Here is where the functionality is desired to access reqjsp.get(j)
        }      
     }
  }
</script> 
<input type="button" name="edireq" id="edireq" onclick="x()" value="Edit Request">
这是我表格中的几列

<%
 for ( int i = 0; i < reqjsp.size(); i++ ) {
%>
  <tr> 
    <td> <input type="radio" name="reqradio" id="req<%=(i+1) %>"></td> 
    <td><%= reqjsp.get(i).getRequestid() %></td>            
    <td><%= reqjsp.get(i).getRequestor() %></td>  
    <td><%= reqjsp.get(i).getApprover() %></td>              
  </tr> 
<%} %>

您可以使用JSP代码生成JavaScript数组,然后在JavaScript中访问生成的变量。但您将无法以这种方式更改底层Java对象中的任何内容:

<script type ="text/javascript">
<% 
   ArrayList<requestbean> reqjsp = new ArrayList<requestbean>();
   reqjsp = (ArrayList<requestbean>) (request.getAttribute("reqdb"));
%>
var myJsArray = new Array();
<%
   for ( int i = 0; i < reqjsp.size(); i++ ) {
%>
myJsArray.push('<%= reqjsp.get(i) %>');
<%
   }
%>

// JavaScript code to access the myJsArray array

</script>
JSP代码将生成此类代码:

<script type ="text/javascript">
var myJsArray = new Array();
myJsArray.push('value1');
myJsArray.push('value2');
myJsArray.push('value3');

// JavaScript code to access the myJsArray array

</script>