簡體   English   中英

如何在按鈕單擊事件中傳遞行值?

[英]How to pass a row value in button click event?

我的jsp文件中包含以下代碼。 在顯示的兩列中,一列是一個值,另一列是一個按鈕。 我想修改以下代碼,以將單擊按鈕的行中的值傳遞到Java文件中。 Java文件將基本上利用傳遞的值。

<table border="1" width="100%" cellpadding="0" cellspacing="0">
<tr>
<th>File ID</th>
<th>Generate Key</th>
</tr>
<%
 Connection con = DbConnector.getConnection();
 PreparedStatement pstm = null;
 String sql = "select u.uniquserid, t.filename, t.status, t.cloud, t.date_, t.report, t.FileID from transaction t join user u on u.userid = t.user order by t.date_ desc;";
 pstm = con.prepareStatement(sql);
 ResultSet rs = pstm.executeQuery();
 while (rs.next()) { %>

 <tr>
   <td><%=rs.getString(7)%></td>
        <% if (rs.getString(3).contains("s")) {%>
        <%request.getSession().setAttribute("PassFID", rs.getString(7));%>
   <td><input type="button" value='Generate Key' onclick=""></input></td>
   <%} else {%>
   <td></td>                                            
   <%}%>
 </tr>
 <%}%>
</table>
<tr>
   <td><%=rs.getString(7)%></td>
        <% if (rs.getString(3).contains("s")) {%>
        <%request.getSession().setAttribute("PassFID", rs.getString(7));%>
   <td><input type="button" value='Generate Key' onclick="yourFunction(<%=rs.getString(7)%>)"></input></td>
   <%} else {%>
   <td></td>                                            
   <%}%>
 </tr>

您可以使用javascript調用函數(建議您將表格放入表格中)。

<tr>
 <td><%=rs.getString(7)%></td>
    <% if (rs.getString(3).contains("s")) {%>
    <%request.getSession().setAttribute("PassFID", rs.getString(7));%>
 <td><input type="button" value='Generate Key' onclick="onclick="somefunction(<%=rs.getString(7)%>);"></input></td>
  <%} 
 else {%>
 <td></td>                                            
 <%}%>

然后使用如下所示的JS將值傳遞給另一個jsp頁面。 在那里,您可以使用此值做任何您喜歡的事情。

 <script type="text/javascript">
    function somefunction(id){
        var f = document.form;
        f.method="post";
        f.action='somepage.jsp?id='+id;
        f.submit();
    }
</script>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM