
有一个div,动态用js给div添加了一张表,现在点击table中的某一个td时,想要把这个div的id读出来~
请问有什么方法可以实现的?
HTML code
<div id="faceContainer" style='position: absolute;height: 150px;width: 300px;left: 27px;top: 100px;display:none;border: 1px solid #999999;'></div>
function loadFace()
{
face = documentgetElementById("faceContainer");
var strTable = "<table border= \"1\" cellpadding=\"0\" cellspacing=\"0\">";
var i,j,count;
count = 0;
for(i=0;i<7;i++)
{
strTable += "<tr>";
for(j=0;j<14;j++)
{
if(count <=95)
{
strTable += "<td><img src='Face/" + count + "gif' onclick=\"insertFace('"+count+"')\" alt=\"表情"+count+"\"/></td>";
}
else
{
strTable += "<td> </td>";
}
count++;
}
strTable += "</tr>";
}
strTable += "</table>";
faceinnerHTML = strTable;
}
在线等高手指点`
------解决方案--------------------
HTML code
<div id="faceContainer" style='position: absolute;height: 150px;width: 300px;left: 27px;top: 100px;display:none;border: 1px solid #999999;'></div>
function loadFace()
{
face = documentgetElementById("faceContainer");
[color=#FF0000]var tbID="myTable";[/color]
var strTable = "<table id=\""+myTable+"\" border= \"1\" cellpadding=\"0\" cellspacing=\"0\">";
var i,j,count;
count = 0;
for(i=0;i<7;i++)
{
strTable += "<tr>";
for(j=0;j<14;j++)
{
if(count <=95)
{
[color=#FF0000]strTable += "<td><img src='Face/" + count + "gif' onclick=\"insertFace('"+count+"','"+tbID+"')\" alt=\"表情"+count+"\"/></td>";[/color] }
else
{
strTable += "<td> </td>";
}
count++;
}
strTable += "</tr>";
}
strTable += "</table>";
faceinnerHTML = strTable;
}
------解决方案--------------------
HTML code
<div id="faceContainer" style='position: absolute;height: 150px;width: 300px;left: 27px;top: 100px;display:block;border: 1px solid #999999;'></div>
<script>
windowonload=function(){loadFace();};
function loadFace()
{
var face = documentgetElementById("faceContainer");
var strTable = "<table border= '1' cellpadding='0' cellspacing='0'>";
var i,j,count;
count = 0;
for(i=0;i<7;i++)
{
strTable += "<tr>";
for(j=0;j<14;j++)
{
if(count <=95)
{
strTable += "<td><img src='Face/" + count + "gif' onclick='insertFace("+faceid+")' alt='表情"+count+"'/></td>";
}
else
{
strTable += "<td> </td>";
}
count++;
}
strTable += "</tr>";
}
strTable += "</table>";
faceinnerHTML = strTable;
}
function insertFace(face){
alert(faceid);
}
</script>
------解决方案--------------------
<div id="faceContainer" style='position: absolute;height: 150px;width: 300px;left: 27px;top: 100px;display:block;border: 1px solid #999999;'></div>
<script>
windowonload=function(){loadFace();};
function loadFace()
{
var face = documentgetElementById("faceContainer");
var strTable = "<table border= '1' cellpadding='0' cellspacing='0'>";
var i,j,count;
count = 0;
for(i=0;i<7;i++)
{
strTable += "<tr>";
for(j=0;j<14;j++)
{
if(count <=95)
{
strTable += "<td><img src='Face/" + count + "gif' onclick='getFace(this)' alt='表情"+count+"'/></td>";
}
else
{
strTable += "<td> </td>";
}
count++;
}
strTable += "</tr>";
}
strTable += "</table>";
faceinnerHTML = strTable;
}
function insertFace(face){
alert(faceparentNodeparentNodeparentNodeid);
}
</script>
------解决方案--------------------
在jquery中非常的简单,一般是$("#id")parent()attr("id"); 就可以了
(转载)
windowopen("sUrl","sName","sFeature","bReplace"); windowopen 返回为对象,返回对新的window对象的引用---------------------------------------------------------------------------------------------------------------------------------------------------------- 方法: 1: 在父级页面 testaspx 的点击<input type="button" id="btnShow" onclick="showItem();" value="显示子窗体"/>按钮触发 ,然后 : <script language="javascript" type="text/javascript">
function showItem() { var win = windowopen("test2aspx",null," height=300,width=450, Left=300px,Top=20px, menubar=no,titlebar=no,scrollbar=no,toolbar=no, status=no,location=no"); } 2: 在子级页面test2aspx的点击<input type="button" id="btnSelect" onclick="check();" value="选择"/> 按钮触发,然后: <script language="javascript" type="text/javascript">
windowopenerdocumentgetElementById("txtName")value=name; } 这样,父级页面的documentgetElementById("txtId") 和 documentgetElementById("txtName") 2个控件就可以得到子级页面的返回值。
在父窗口中获取iframe中的元素
1、
格式:windowframes["iframe的name值"]documentgetElementByIdx_x("iframe中控件的ID")click();
实例:windowframes["ifm"]documentgetElementByIdx_x("btnOk")click();
2、
格式:
var obj=documentgetElementByIdx_x("iframe的name")contentWindow;
var ifmObj=objdocumentgetElementByIdx_x("iframe中控件的ID");
ifmObjclick();
实例:
var obj=documentgetElementByIdx_x("ifm")contentWindow;
var ifmObj=objdocumentgetElementByIdx_x("btnOk");
ifmObjclick();
在iframe中获取父窗口的元素
格式:windowparentdocumentgetElementByIdx_x("父窗口的元素ID")click();
实例:windowparentdocumentgetElementByIdx_x("btnOk")click();
jquery
在父窗口中获取iframe中的元素
1、
格式:$("#iframe的ID")contents()find("#iframe中的控件ID")click();//jquery 方法1
实例:$("#ifm")contents()find("#btnOk")click();//jquery 方法1
2、
格式:$("#iframe中的控件ID",documentframes("frame的name")document)click();//jquery 方法2
实例:$("#btnOk",documentframes("ifm")document)click();//jquery 方法2
在iframe中获取父窗口的元素
格式:$('#父窗口中的元素ID', parentdocument)click();
实例:$('#btnOk', parentdocument)click();
父窗获取子窗口的IFrame中的JS方法
一、父窗口调用iframe子窗口方法
1、HTML语法:<iframe name="myFrame" src="childhtml"></iframe>
2、父窗口调用子窗口:myFramewindowfunctionName();
3、子窗品调用父窗口:parentfunctionName();
简单地说,也就是在子窗口中调用的变量或函数前加个parent就行
4、父窗口页面源码:
复制代码代码如下:
<html>
<head>
<script type="text/javascript">
function say() {
alert("parenthtml------>I'm at parenthtml");
}
function callChild()
{
//documentframes("myFrame")f1();
myFramewindowsay();
}
</script>
</head>
<body>
<input type=button value="调用childhtml中的函数say()" onclick="callChild()">
<iframe name="myFrame" src="childhtml"></iframe>
</body>
</html>
5、子窗口页面:
复制代码代码如下:
<html>
<head>
<script type="text/javascript">
function say()
{
alert("childhtml--->I'm at childhtml");
}
function callParent() {
parentsay();
}
</script>
</head>
<body>
<input type=button value="调用parenthtml中的say()函数" onclick="callParent()">
</body>
</html>
二、iframe 父窗口和子窗口相互的调用方法
1、IE中使用方法:
父窗口调用子窗口:iframe_IDiframe_document_objectobject_attribute = attribute_value
例子:onClick="iframe_textmyH1innerText='>
$("#floatDiv")before("<div class=\"floatDiv\" id=\"floadDiv"+peovalue+"\"><div class=\"selectDiv\">"+peonextSiblinginnerText+"</div><div class=\"selectCancle\"><a href=\"javascript:closeDiv(this)\">×</a></div></div>");
}else if(!peochecked){
var divID ="floatDiv"+peovalue;
$("#"+divID)remove();
}
}
1、首先建立一个父级页面parenthtml,代码如图,一个pop函数方法,一个链接到childhtml的iframe标签。
2、再新建一个childhtml页面,如图,展示一个id=link的div标签,和link的点击事件,因为是调用父级方法,所以需要用到windowparentpop()方法。
3、预览页面,可明显看到parenthtml里面的iframe框架,指向的就是child子页面。
4、点击页面中“调用父级pop方法”的文字链,会提示错误,这是因为没配置好域名等相关设置。
5、打开iis,右键iframe文件夹——“管理文件夹”——“浏览”;即可打开本地测试地址;(如小伙伴没配置iis,需要先配置iis建立站点)。
6、再次点击“调用父级pop方法”的文字链,即可成功d出提示。
<body>
<table class="tbeTarget" id="tbeTarget">
<tr>
<td class="tips1" id="tips1"> 12345abcd </td>
<td class="tips2" id="tips2"> 23456fvbg </td>
</tr>
</table>
<input type="button" onclick="getTdValue();" value="GETTDVALUE">
</body>
获取标签建议还是用ID来获取,简单方便
用getElementById("tbeTarget")可获取table
用getElementById("tips2")可获取到tips2
有ID的话,getElementById("tbeTarget")tips2也能得到你要的 tips2
特殊情况实在不能用ID时,也可用getElementsByTagName
var o=documentgetElementsByTagName("table"); 这个就获取到了所有的table标签,返回值是数组类型的
像你这个代码的话,只有个一个table,那 o[0]就是你要的table标签了
实在要用getElementByClassName的话,
var o=documentgetElementByClassName("tbeTarget");
var ot=ogetElementsByTagName("td"); //直接用ogetElementByClassName("tips2")应该也可以
for(var i=0;i<otlength;i++){
if(ot[i]class=="tips2"){
alert(ot[i]); //在这if里面,用ot[i]调用到的就是你要的 tips2了
}
}
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>Ball</title>
<style type="text/css">
</style>
<script type="text/javascript">
onload = function ()
{
var btn = documentquerySelector ("input[type=button]");
var table = btnparentElementparentElementparentElement;
alert (tableouterHTML);
}
</script>
</head>
<body>
<table>
<tr>
<td><input type="button" value="接待" />
</td>
</tr>
<tr>
<td><input type="button" value="接待" />
</td>
</tr>
</table>
</body>
</html>
以上就是关于js怎样获取父类div的id解决思路全部的内容,包括:js怎样获取父类div的id解决思路、JS 用window.open()函数,父级页面如何取到子级页面的返回值、js获取iframe 然后 *** 作--》点击iframe的document或body的时候,修改父窗体的样式等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)