0

我有一个 apache 点击页面,其中包含一个带有操作链接和复选框的表格。表也​​有分页器。一旦用户通过选择复选框从表中选择了一些条目,他就可以通过选择表单上的提交按钮来执行操作。但是当用户从一个表格页面移动到另一个表格页面时,复选框不会保留其状态。我尝试将选定的条目保存在静态数组列表中,但它没有被填充。

4

2 回答 2

0

Try following steps:
1. make a hidden field on java page. add it to the form.
2. onclick of every checkbox set the value of hiddenfield using javascript function.
3. add dummy form to you htm page with dummy hidden submit. like

<form name="dummyForm" action="" method="POST" >
<input type="hidden" name="dummyHiddenCBSelected" value="" />
</form>

4. on java page table paging link call the javascript function to submit the above dummy form. eg: table.getControlLink().setAttribute("onclick", "tableAction(this); return false;");

and javascript function like:

function tableAction(_anchorObj) {


  var linkHref;  
  linkHref = _anchorObj.getAttribute("href");


  //Set the value in hidden field
  var hiddenCBSelected = document.getElementById('your hiddenfield');
  document.getElementsByName("dummyHiddenCBSelected")[0].value = hiddenCBSelected.value;

  //Set the form href and submit form
  document.getElementsByName('dummyForm')[0].action = linkHref;
  document.getElementsByName('dummyForm')[0].submit();

}
于 2015-03-16T05:43:08.560 回答
0

Click 是一个无状态的框架。引用文档

Click 不会自动保存和恢复控件状态。相反,状态保存和恢复由开发人员通过公共 API 完全控制。

正如您从 Stateful interface 的文档中看到的那样,几个控件实现了该协定,并使用“搜索表页面”示例作为参考,您可以实现您的用例。

H,

吉尔伯托

于 2012-12-08T23:08:05.640 回答