Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/434.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在Spring框架中使用display标记跳转到特定的页码_Java_Javascript_Displaytag - Fatal编程技术网

Java 如何在Spring框架中使用display标记跳转到特定的页码

Java 如何在Spring框架中使用display标记跳转到特定的页码,java,javascript,displaytag,Java,Javascript,Displaytag,我想使用带有文本框和“go”按钮的显示标签跳转到特定的页码。 点击GO按钮调用一个javascript,在其中它应该通过该.htm转到该特定页面,但这并没有发生。 请为这种获取特定页面的特殊方式提出一个论点,否则,我们始终欢迎其他建议 下面是到目前为止我知道的displaytag.properties中的参数 在这里输入代码 {0}: numbered pages list {1}: link to the first page {2}: link to the previous page {3

我想使用带有文本框和“go”按钮的显示标签跳转到特定的页码。 点击GO按钮调用一个javascript,在其中它应该通过该.htm转到该特定页面,但这并没有发生。 请为这种获取特定页面的特殊方式提出一个论点,否则,我们始终欢迎其他建议 下面是到目前为止我知道的displaytag.properties中的参数

在这里输入代码

{0}: numbered pages list
{1}: link to the first page
{2}: link to the previous page
{3}: link to the next page
{4}: link to the last page
{5}: current page
{6}: total number of pages
下面是单击GO按钮时调用的javascript函数

function selectPage(){
 alert("pageNo:" +document.portalDisplayform.selPageNo[0].value);
 alert("pageNo:" +document.portalDisplayform.selPageNo[1].value);
 var pageNo = document.portalDisplayform.selPageNo[0].value;
 var pageNo = document.portalDisplayform.selPageNo[1].value;
 document.portalDisplayform.action = '<%=request.getContextPath()%      >'+"/portalAccessdisplay.htm?tokenId="+'<%=cachetoken%>'+pageNo;
 document.portalDisplayform.submit();
function selectPage(){
警报(“页码:+document.portalDisplayform.selPageNo[0].value”);
警报(“页码:+document.portalDisplayform.selPageNo[1].value”);
var pageNo=document.portalDisplayform.selPageNo[0]。值;
var pageNo=document.portalDisplayform.selPageNo[1]。值;
document.portalDisplayform.action=''+''/portalAccessdisplay.htm?tokenId=“+''+pageNo;
document.portalDisplayform.submit();

}这并不容易,因为displaytag对参数进行编码(以避免与功能参数的命名冲突),并且在多个表位于同一页面的情况下,每个表使用唯一的ID。我建议您下载displaytag的源代码,查看ParamEncoder和Pagination类(以及它们的调用者),以了解displaytag是如何构造指向特定页面的链接的。您必须使用类似的代码来生成URL,并且必须在JavaScript代码中修改相应(编码)参数的值。

这并不容易,因为displaytag对参数进行编码(以避免命名与功能参数冲突),并为每个表使用唯一的ID,以防多个表格在同一页上。我建议您下载displaytag的源代码,查看ParamEncoder和Pagination类(以及它们的调用者),以了解displaytag是如何构造指向特定页面的链接的。您必须使用类似的代码来生成URL,并且必须修改JavaScript代码中相应(编码)参数的值。

最简单的方法是,您可以修改display tag jar文件中的
TableTag.java
。在此文件中修改
initParameters()
方法。方法内部 将下面的4行代码放在下面。 在
initParameters()
方法中的这一行之后

this.pageNumber = (pageNumberParameter == null) ? 1 : pageNumberParameter.intValue();
请输入下面的代码

if((request.getParameter("pageno") != null) && (request.getParameter("pageno") != ""))
{
     this.pageNumber=Integer.parseInt(request.getParameter("pageno"))
}     

并在
DisplayTag
页面中使用名为pageno的
TextBox
。还可以在
DisplayTag
属性
excludedparam

中包含名称。最简单的方法是,可以修改DisplayTag jar文件中的
TableTag.java
。在此文件中修改
initParameters()
方法。方法内部 将下面的4行代码放在下面。 在
initParameters()
方法中的这一行之后

this.pageNumber = (pageNumberParameter == null) ? 1 : pageNumberParameter.intValue();
请输入下面的代码

if((request.getParameter("pageno") != null) && (request.getParameter("pageno") != ""))
{
     this.pageNumber=Integer.parseInt(request.getParameter("pageno"))
}     

并在
DisplayTag
页面中使用名为pageno的
TextBox
。在
DisplayTag
属性
excludedparam

中也包含与spring框架无关,与java也无关的名称。请修复您的问题和标记。您正在将页码附加到缓存令牌。考虑把它作为一个实际的URL参数用一个名称传递。您没有说明是否正在进行服务器端分页,是吗?这与spring框架无关,也与java无关。请修复您的问题和标记。您正在将页码附加到缓存令牌。考虑把它作为一个实际的URL参数用一个名称传递。您没有说明是否正在进行服务器端分页,是吗?