1

我有一个 jsp 文件,在按钮上单击一堆行以 html 表格格式显示。

这些行也有复选框。当我单击一个复选框并单击另一个按钮时,我能够检索选定的行标签并将它们推送到一个数组中。

如何将此数组传递给 servlet\scriptlet。

数组由如下标签组成:'< td > hi < /td> <td>ho</td>','< td > hi < /td> <td>ho< /td>',....

我包含了 json2.js 并尝试了 stringify,但是当我使用 request.getparametervalues() 时,servlet 总是返回说 null

我也没有提交表单,因此排除了编码的提交表单部分。

非常感谢任何和所有建议。

js中的代码:

$.ajax({
    type: 'POST',
    url: 'book.jsp',
    data: JSON.stringify({ nameParameter: colheader }),
    dataType: 'json',
    contentType: "application/json; charset=utf-8",
    success:function(data){alert(data);},
    error:function(){alert('error');}
});

scriptlet book.jsp 中的代码

String[] arrayData=request.getParameterValues("nameParameter");
System.out.println("########nameParameter"+arrayData);
4

1 回答 1

0

我找到了一种方法。

我使用主键的值向每个复选框添加一个 rowid。

在选中一个复选框后,我使用以下命令将 rowid 发布到 scriptlet

$.post('target.jsp', { id: selectedrows }); 

selectedrows 是一组选定的 rowid。

我将得到的结果集设置到jsp中的session中。

我从我的 scriptlet (target.jsp) 中的会话中检索结果集,并根据我选择的 rowids 进行过滤。这样我就拥有了所有的值,并且不需要传递整个 rowtag。

或者,您可以使用选定的 rowid 再次查询数据库,我选择不这样做,因为我的结果集不包含超过 100 行。

于 2012-05-31T17:28:18.093 回答