遇到這種這種分割頁面,大家首先想到是frameset,使用framset分割多 " /> 波多野结衣在线观看一区,久久亚洲网站,无遮羞无删减肉动漫在线观看

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

整體刷新和局部刷新frameset窗口問題深入探討

在項(xiàng)目中,經(jīng)常會(huì)遇到頁面分割,最常見的系統(tǒng)或網(wǎng)站的主界面。主頁面分為,上面系統(tǒng)簡介、下面作者簡介、左邊系統(tǒng)功能菜單、右邊則是菜單真正展示的界面。

遇到這種這種分割頁面,大家首先想到是frameset,使用framset分割多種frame,這種方式簡單。若是不喜歡使用framset,喜歡前臺設(shè)計(jì)的人也許會(huì)選擇div拼接,浮動(dòng),這就考查css樣式的功底了。
這次主要講解局部刷新的問題。需求是:左邊f(xié)rame,右邊f(xié)rame。

大家肯定疑問,這樣刷新沒有問題啊。的確如此?,F(xiàn)在使用framset,分割兩frame,各自更新各自。右邊f(xié)rame展示菜單盡管更新提交即可。對左邊f(xié)rame是沒有影響的。

為了方便理解,左邊Frame簡稱LeftFrame,右邊Frame簡稱RightFrame;假如我提交RightFrame頁面,需要更新LeftFrame【動(dòng)態(tài)】頁面。那如何辦呢?
其實(shí)就是從數(shù)據(jù)庫中重新讀數(shù)據(jù);
復(fù)制代碼 代碼如下:
<FRAMESETcols="280,*"frameborder=yesbordercolor=silver>
<FRAMESRC="modifyMenu!showTreeMenu"NAME="menuTree"SCROLLING="No"id="leftTree">
<FRAMESRC="showModifyMenu.jsp"NAME="main"SCROLLING="AUTO"id="showModifyMenu">
lt;/FRAMESET>

其中modifyMenu!showTreeMenu是轉(zhuǎn)向到tree.jsp頁面
現(xiàn)在項(xiàng)目中,前臺使用struts2,當(dāng)提交右邊頁面數(shù)據(jù)時(shí),當(dāng)時(shí)設(shè)想:然后再次跳轉(zhuǎn)到主界面,相當(dāng)于重新讀取數(shù)據(jù),但是加載的主界面竟然是顯示在右邊區(qū)域,這樣就成了兩個(gè)LeftFrame。即使更改Struts2中的resultType的重定向也不可以。

最后,竟然一個(gè)簡單的JS解決問題。
在提交右邊頁面RightFrame,使用JS更新左邊LeftFrame。如下:
在rightFrame中的body的onload的事件:
復(fù)制代碼 代碼如下:
functioninit(){
//leftTree是左邊Frame的id
//重新加載這個(gè)頁面
window.parent.frames["leftTree"].location.reload();
}

window.parent.frames["leftTree"].location.reload()
當(dāng)時(shí)你在某一個(gè)思路上山窮水盡的時(shí)候,可以嘗試換種思路,也是會(huì)柳暗花明.
需求如下:若刷新右邊RightFrame頁面,只刷新部分左邊LeftFrame【刷新某個(gè)div】。
提到局部部分刷新,肯定想到是Ajax局部刷新。
那我們用純js的Ajax基礎(chǔ)實(shí)現(xiàn):
復(fù)制代碼 代碼如下:
functioncreateXmlHttpRequest(){
if(window.XMLHttpRequest){
returnnewXMLHttpRequest();
}elseif(window.ActiveXObject){
returnnewActiveXObject("Microsoft.XMLHTTP");
}
}
functioninit(){
//則進(jìn)行局部刷新
varxmlHttpReq=createXmlHttpRequest();
//獲得出發(fā)的url的,比如struts2的action或者servlet或jsp頁面
varurl="success.jsp";
xmlHttpReq.open("GET",url,true);
//因?yàn)槟阍谧饕粋€(gè)異步調(diào)用,
//所以你需要注冊一個(gè)XMLHttpRequest對象將調(diào)用的回調(diào)事件處理器
xmlHttpReq.onreadystatechange=function(){
if(xmlHttpReq.readyState==4){
if(xmlHttpReq.status==200){
//使用parent獲得左邊頁面中的某一個(gè)div,然后更改展示的外觀
window.parent.frames["leftTree"].document.getElementById(divId).innerHTML="測試";
}else{
alert(xmlHttpReq.status+xmlHttpReq.responseText);
}
}
};
xmlHttpReq.send(null);
}

window.parent.frames["leftTree"].document.getElementById(divId).innerHTML=xmlHttpReq.responseText
后臺action中的寫法如下:
復(fù)制代碼 代碼如下:
01.HttpServletResponseresponse=ServletActionContext.getResponse();
response.setContentType("text/html;charset=utf-8");
out=response.getWriter();
out.print("從后臺傳入的數(shù)據(jù)");

兩種刷新方式,一種整體刷新;一種局部刷新;

jsp技術(shù)整體刷新和局部刷新frameset窗口問題深入探討,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: aaaaaa精品视频在线观看 | 精品久久久久久久一区二区手机版 | 94久久国产乱子伦精品免费 | 91精品国产综合久久久久久 | 久草中文网 | 黄色色视频 | 亚洲无吗视频 | 日产欧产va高清 | 国内精品视频免费观看 | 婷婷久 | 亚洲视频一区二区三区 | 久久久夜间小视频 | 日本妇人成熟免费不卡片 | 成人国产精品免费网站 | 奇米影视久久777中文字幕 | 国产麻豆91欧美一区二区 | 天天干2018| 视频一区二区三区免费观看 | 国产成人综合在线视频 | 亚洲国产精品日韩一线满 | 天天躁日日躁成人字幕aⅴ 天天躁日日躁狠狠躁中文字幕老牛 | 久久亚洲精品国产精品婷婷 | 欧美在线视频网 | 久久精品网站2019精品 | 成人精品视频一区二区在线 | 欧美色就是色 | 久久综合久久鬼色 | 成人小视频在线免费观看 | 一级a性色生活片久久毛片 一级爱爱片一级毛片-一毛 | 国产福利精品在线 | 精品一区二区三区四区在线 | 亚洲综合91 | 美国美女一级毛片免费全 | 亚洲大片免费看 | 日韩精品一区二区三区中文 | 又黄又爽的男女视频 | 久久国产乱子伦精品在 | 在线观看午夜视频 | 亚洲欧美视频在线播放 | 91视频一区 | 国产成在线人视频免费视频 |