自定义JSP的重新加载

时间:2012-11-28 16:01:06

标签: javascript jsp

我有一个JSP文件,其中有一些标签由div确定,例如

<div>
  <ul>
    <li>Tab1</li>
    <li>Tab2</li>
  </ul>
  <div>
    tab 1 here
  </div>
  <div>
    tab 2 here
  </div>
</div>

现在我在tab2中写了一些javascript来告诉页面重新加载(window.location.reload())。我需要获取新重新加载的页面,将焦点放在标签2上,而不是标签1。

有没有办法使用客户端代码自定义重新加载内容。

提前谢谢

祝你好运

2 个答案:

答案 0 :(得分:0)

出于您的目的,您可以使用参数调用页面,该参数可以在您加载页面时告诉哪个选项卡获得焦点。

eg: window.location.href='something.jsp?tab=tab1';

而不是

window.location.reload();

您使用参数

重新加载页面
window.location=document.url+"?tab=tab2";

答案 1 :(得分:0)

而不是重新加载,将位置更改为同一页面并发送参数

window.location.href = <your page here>?focus=2

获取参数使用类似:

function getUrlVars() {
    var vars = {};
    var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
        vars[key] = value;
    });
    return vars;
} 

设置jsp主体以调用此函数onload:

<body onload="focus()">

function focus() {
    tab = getUrlVars()["focus"]; //this will give you the number of the tab you shall focus
}