var the_td = get_Element(the_obj,"td"); if(the_td==null) return; var the_tr = the_td.parentElement; var the_table = get_Element(the_td,"table"); var i = 0; clear_color(); cur_row = the_tr.rowIndex; cur_col = the_td.cellIndex;
漏了一个 var the_obj = event.srcElement;你在table的onclick事件中填加上面的代码 cur_row 和cur_col 就是你要的行号和列号
if(the_td==null) return;
var the_tr = the_td.parentElement;
var the_table = get_Element(the_td,"table");
var i = 0;
clear_color();
cur_row = the_tr.rowIndex;
cur_col = the_td.cellIndex;
var the_obj = event.srcElement;你在table的onclick事件中填加上面的代码
cur_row 和cur_col 就是你要的行号和列号
<tr><td>1</td><td onclick="mm(this)">2</td></tr>
</table><SCRIPT LANGUAGE="JavaScript">
function mm(e)
{
var td = searchObjByTagName(e, "TD");
var tr = td.parentElement;
alert("在第 "+ (tr.rowIndex+1) +" 行第 "+ (td.cellIndex+1) +" 列");
}
function searchObjByTagName(obj, tag)
{
while(obj!=null && typeof(obj.tagName) != "undefind")
{
if(obj.tagName == tag.toUpperCase()) return(obj);
obj = obj.parentElement;
}
return null;
}
</SCRIPT>不要懒, 多看看代码对你有好处的.
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD><BODY>
<table width=100% border=1 cellspacing=0 cellpadding=2 id="powertable">
<tr align=middle bgcolor=#ffcc00>
<td>first name</td>
<td>last name</td>
<td>team</td>
<td>engine</td>
<td>tyres</td>
<td>fastest lap</td>
<td>国家</td></tr>
<tr align=middle bgcolor=#ffcc00>
<td>first name</td>
<td>last name</td>
<td>team</td>
<td>engine</td>
<td>tyres</td>
<td>fastest lap</td>
<td>国家</td></tr>
<tr align=middle bgcolor=#ffcc00>
<td>first name</td>
<td>last name</td>
<td>team</td>
<td>engine</td>
<td>tyres</td>
<td>fastest lap</td>
<td>国家</td></tr>
</table>
</BODY>
</HTML>
<script>
function showTableRows() {
var the_obj = event.srcElement ;
var the_td = get_Element(the_obj,"td");
if(the_td==null) return;
var the_tr = the_td.parentElement;
var the_table = get_Element(the_td,"table");
var i = 0;
cur_row = the_tr.rowIndex;
cur_col = the_td.cellIndex;
alert("当前的行号是" + cur_row) ;
}
function get_Element(the_ele,the_tag){
the_tag = the_tag.toLowerCase();
if(the_ele.tagName.toLowerCase()==the_tag)return the_ele;
while(the_ele=the_ele.offsetParent){
if(the_ele.tagName.toLowerCase()==the_tag)return the_ele;
}
return(null);
}
powertable.onclick = showTableRows;
</script>
<tr><td>1</td><td>2</td></tr>
<tr><td>3</td><td>4</td></tr>
<tr><td>5</td><td>6</td></tr>
</table><SCRIPT LANGUAGE="JavaScript">
function mm()
{
var e = window.event.srcElement;
var td = searchObjByTagName(e, "TD");
var tr = td.parentElement;
alert("在第 "+ (tr.rowIndex+1) +" 行第 "+ (td.cellIndex+1) +" 列");
}
function searchObjByTagName(obj, tag)
{
while(obj!=null && typeof(obj.tagName) != "undefind")
{
if(obj.tagName == tag.toUpperCase()) return(obj);
obj = obj.parentElement;
}
return null;
}
</SCRIPT>
{
return new Array(obj.parentElement.rowIndex,obj.cellIndex);
}
将你的事件源作为参数传递到函数中,返回一个数组,第一个元素是行号,第二个元素是列号
<table width="397" height="217" border="1" class=>
<tr>
<td onClick="getTd(this)"> </td>
<td onClick="getTd(this)"> </td>
<td onClick="getTd(this)"> </td>
</tr>
<tr>
<td onClick="getTd(this)"> </td>
<td onClick="getTd(this)"> </td>
<td onClick="getTd(this)"> </td>
</tr>
<tr>
<td onClick="getTd(this)"> </td>
<td onClick="getTd(this)"> </td>
<td onClick="getTd(this)"> </td>
</tr>
</table>
<script language="javascript">
function getTd(td)
{
alert("这是第"+(td.parentElement.rowIndex+1)+"行,第"+(td.cellIndex+1)+"列");
}
</script>
OBJ.offsetParent到底是什么属性啊
到MSDN上看了一下,还是不太明白
谁给我解释一下,我马上就要结贴了
谢谢!!!