⑴ jsp li定位
使用js腳本來判斷
兩種方法:
第一種,首先你要給每次循環是設置一個計數器,或者把內listTime對象的唯一主容鍵列印出來,假設index就是你的主鍵
代碼修改為:
<liid="<%=index%>"><aonclick="getIndex()"><s:propertyvalue="record_date"/></a></li>
只要點擊a標簽,就調用js腳本的getIndex()方法,在這個方法里獲取父對象li的id即可。
第二種,不用加index,全由js腳本判斷。思路是點擊任意a標簽之後,拿到父對象的父對象ul,然後for遍歷ul下的所有li,找到你點擊的li即可
我不知道你用javascript還是jquery,就不寫具體代碼了,網上很多
⑵ 怎麼獲取iframe裡面的元素
JS獲取/設置iframe內對象元素、文檔的幾種方法
1、IE專用(通過frames索引形象定位):
復制代碼 代碼如下:
document.frames[i].document.getElementById('元素的ID');
2、IE專用(通過iframe名稱形象定位):
復制代碼 代碼如下:
document.frames['iframe的name'].document.getElementById('元素的ID');
以上方法,不僅對iframe適用,對frameset里的frame也同樣適用。IE雖然擅於自定標准,但不得不說它很多的設計還是比較體現人性化的。比如這個,它在同樣支持下面的標准路徑之外,提供了一個簡潔且形象化的寫法。
3、通用方法:
復制代碼 代碼如下:
document.getElementById('iframe的ID').contentWindow.document.getElementById('元素的ID')
注意要加上contentWindow,往往出現問題都是因為這個容易被忽略,它代表frame和iframe內部的窗口對象。
JS獲取iframe文檔內容
復制代碼 代碼如下:
<script type="text/javascript">
function getIframeContent(){ //獲取iframe中文檔內容
var doc;
if (document.all){ // IE
doc = document.frames["MyIFrame"].document;
}else{ // 標准
doc = document.getElementById("MyIFrame").contentDocument;
}
return doc.body.innerHTML;
}
</script>
注意:上面的 .contentDocument 相當於 .contentWindow.document !
一、需求與遇到的問題
在網站的後台管理中使用了iframe框架布局,包括頂部菜單、左側導航和主頁面。需求是:點擊主頁面上的一個按鈕,在頂部菜單欄的右側顯示「退出」鏈接,點擊可退出系統。
我的思路是:在頂部的菜單頁面放一個不可見的「退出」鏈接,當用戶點擊位於iframe中的主頁面(mainPage.htm)中的按鈕時,在頂部菜單頁面的右側顯示「退出」。
我現在遇到的問題是:如何在頁面的一個iframe子頁面(mainPage.htm)中獲取並且操作其它iframe子頁面(比如topPage.htm)中的HTML元素?
二、通過JS獲取並操作iframe中的元素來解決問題
這里主要就是通過JS來操作Window對象。Window 對象表示瀏覽器中打開的窗口,如果文檔包含框架(frame 或 iframe 標簽),瀏覽器會為 HTML 文檔創建一個 window 對象,並為每個框架創建一個額外的 window 對象。
經過我在網上查資料,找到了JS操作iframe中HTML元素的方法。示例如下。
復制代碼 代碼如下:
function ShowExit() {
//獲取iframe的window對象
var topWin = window.top.document.getElementById("topNav").contentWindow;
//通過獲取到的window對象操作HTML元素,這和普通頁面一樣
topWin.document.getElementById("exit").style.visibility = "visible";
}
說明:第一步,通過window.top.document.getElementById("topNav")方法獲取了頂部菜單頁面(topPage.htm)所在的iframe對象;第二步,通過上一步獲取到的iframe對象的contentWindow屬性得到了iframe中元素所在的window對象;第三步,通過上一步獲取到的window對象來操作iframe框架中的元素,這和操作不在iframe框架中的普通HTML元素是一樣的。
⑶ js/jquery如何獲取獲取父窗口的父窗口的元素
發現答非所問的人還不少啊
取父窗口的元素方法:$(selector, window.parent.document);
那麼你取父窗口的父窗口的元素就專可以用:$(selector, window.parent.parent.document);
類似屬的,取其它窗口的方法大同小異
$(selector, window.top.document);
$(selector, window.opener.document);
$(selector, window.top.frames[0].document);
希望對你能有幫助
⑷ 我要怎麼取得父級DIV的ID呢
首先通過js獲取到當前img對象,可以使用document.getElementById()的方式,然後通獲取到的對象的parentElement屬性指向的就是當前元素的直接父級元素。
//獲取到當前IMG對象
varobj=document.getElementById("imgId");
//獲取到IMG對象的直接父級對象元素
varparentEl=obj.parentElement;
示例效果代碼:
<html>
<head>
<metahttp-equiv="content-type"content="text/html;charset=GBK">
<style>
#div_parentDiv{width:20%;text-align:center;}
.mouseoverCss{border:1pxsolid#FF0000;}
.mouseoutCss{border:1pxsolid#EEEEEE;}
</style>
<scripttype="text/javascript">
functiongetParentEl(obj,showColor){
if(obj){
//這個就是獲取當前對象的上一級元素
varparentEl=obj.parentElement;
varclassName="mouseoutCss";
if(showColor){
className="mouseoverCss";
}
parentEl.className=className;
}
}
</script>
</head>
<body>
<divid="div_parentDiv"class="mouseoutCss">
<imgsrc="https://gss0.bdstatic.com/70cFsjip0QIZ8tyhnq/img/iknow/avarta/66/r6s1g11.gif"onmouseover="getParentEl(this,true);"onmouseout="getParentEl(this,false);"/>
</div>
</body>
</html>
⑸ js裡面的父節點作用
通過頂層document節點獲取:
(1) document.getElementById(elementId):該方法通過節點的ID,可以准確獲得需要的元素,是比較簡單快捷的方法。如果頁面上含有多個相同id的節點,只返回第一個節點。
(2)document.getElementsByName(elementName):該方法是通過節點的name獲取節點,從名字可以看出,這個方法返回的不是一個節點元素,而是具有同樣名稱的節點數組。可以通過要獲取節點的某個屬性來循環判斷是否為需要的節點。
(3)document.getElementsByTagName(tagName):該方法是通過節點的Tag獲取節點,返回一個數組。
通過父節點獲取:
(1)parentObj.firstChild:如果節點為已知節點(parentObj)的第一個子節點就可以使用這個方法。
(2)parentObj.lastChild:很顯然,這個屬性是獲取已知節點(parentObj)的最後一個子節點。
(3)parentObj.childNodes:獲取已知節點的子節點數組,然後可以通過循環或者索引找到需要的節點。
(4)parentObj.children:獲取已知節點的直接子節點數組。
(5)parentObj.getElementsByTagName(tagName):使用方法不再贅述,返回已知節點的所有子節點中類型為指定值的子節點數組。
通過臨近節點獲取:
(1)neighbourNode.previousSibling:獲取已知節點(neighbourNode)的前一個節點。
(2)neighbourNode.nextSibling:獲取已知節點(neighbourNode)的下一個節點,同樣支持遞歸。
4、通過子節點獲取:
childNode.parentNode:獲取已知節點的父節點。