Javascript 跨两个jsp页面维护该值
我必须在表中取值:Javascript 跨两个jsp页面维护该值,javascript,jquery,ajax,jsp,Javascript,Jquery,Ajax,Jsp,我必须在表中取值: <script type="text/javascript"> var activeRequest; $(document).ready(function(){ $(".i_search").on("click", function(event){ event.preventDefault(); activeRequest = $(this).closest('tr').f
<script type="text/javascript">
var activeRequest;
$(document).ready(function(){
$(".i_search").on("click", function(event){
event.preventDefault();
activeRequest = $(this).closest('tr').find('.request').text();
renderElement();
});
});
function renderElement(inUrl){
$.ajax({
url: "/?pagename=SiteEntry_LT_EM/Advise/CS_Advise_Detail",
type: "POST",
data : {"advice_id":activeRequest}
})
.done(function( response ) {
$("#popUpDetail").html(response).fadeIn('slow');
});
}
</script>
首先,在使用POST时,不应在url中包含参数,而应在数据部分中包含参数。不要混为一谈,两种方式都做 其次,如果您怀疑缓存问题,在ajax调用中,包括一个随机参数和/或设置cache:false,如下所示:
$.ajax({
url: "/",
type: "POST",
cache: false,
data :
{
"advice_id":activeRequest,
"pagename": "SiteEntry_LT_EM/Advise/CS_Advise_Detail"
"r": Math.random()
}
})
您还可以在ajax调用的servlet或jsp中不设置缓存头,以防止浏览器缓存它:
response.setHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0");
response.setHeader("Pragma","no-cache");
已经提供服务的页面不会得到更新,除非他们正在进行ajax轮询或类似的操作。即使我再次调用“onclick”事件,你知道吗@developerjk抱歉,我以为您的意思是希望这个ajax调用更新一个不同的选项卡。您应该更改标题,因为它具有误导性。谢谢,它是Oracle Web Center网站的一个参数,位于SiteEntry:
SiteEntry\LT\u EM/advice/CS\u advice\u Detail
缓存规则:已删除缓存。
$.ajax({
url: "/",
type: "POST",
cache: false,
data :
{
"advice_id":activeRequest,
"pagename": "SiteEntry_LT_EM/Advise/CS_Advise_Detail"
"r": Math.random()
}
})
response.setHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0");
response.setHeader("Pragma","no-cache");