如何使用动态创建的按钮调用servlet

时间:2015-12-31 15:26:29

标签: javascript java jsp servlets web-applications

我会尝试做一个简短的解释,并清楚详尽地解释这个问题。

我有一个由servlet调用的JSP页面。这个JSP页面根据查询后servlet返回的记录数生成一些按钮(这些记录通过ArrayList对象传递,所以如果ArrayList.size()它是3,我将生成3个按钮;如果10,10个按钮等),每个按钮在一个表中彼此相邻,每行最多可以有5个按钮。

现在真正的问题是:一旦我创建了这些按钮,我需要调用一个servlet,但是这个servlet必须知道按下了哪个按钮(例如,如果有5个按钮,如果我按第3个,我需要发送到我按下第3个按钮的servlet)。我怎么能实现这个?我可以通过JavaScript中的脚本来完成吗?如果可能的话,你可以分享我为此目的所需的代码吗?

注意:按钮数量为DYNAMIC,因为按钮数量每次都不同。我只需按一个按钮,servlet就必须知道按下了哪个按钮。 (如果按第1个按钮,则返回“1”。如果按第2个按钮,则返回“2”。如果按n°按钮,则返回“n”。我希望现在很清楚。< /强>

我希望我能清楚地解释这个问题,但是我粘贴了与按钮生成相关的部分代码:

<table class="table" cellspacing="0" cellpadding="0">
                <%
                    int buttons_number = 0;
                    int index = 0;

                    while(buttons_number< array.size()){
                %>
                        <tr> 
                            <%
                           while(index < 5 && buttons_number < array.size()){

                                String idChar = Integer.toString(index);
                            %>
                                 <td><input type="button" class="MyButton" id="<%=idChar %>"></td>   
                            <%
                                index++;
                                buttons_number++;

                            }

                            index= 0;

                            %>
                        </tr>
                    <%
                    }
                    %>

</table>

1 个答案:

答案 0 :(得分:0)

解决方案:

我改变了:

<td><input type="button" class="MyButton" id="<%=idChar %>"></td>

进入:

<td><input type="submit" class="MyButton" id="MyButton" name="MyButton" value="<%=idChar %>"></td>

然后,当我按下提交按钮时,我将调用servlet中的doPost()方法并发送按下的按钮的值。

String ButtonPressed = request.getParameter("MyButton");