日期:2014-05-16  浏览次数:20413 次

为什么取不到对象
html
================================================
<TABLE cellSpacing=0 cellPadding=6 border=0>
  <TBODY>
  <TR class=row1>
  <TD width=200><IMG alt="" src="editor/editor/common.gif" border=0> 
  上传附件</TD>
  <TD align=middle>描述</TD>
  </TR>
  </TBODY>
  <TBODY id=attachbodyhidden style="DISPLAY:none">
  <TR class=row1>
  <TD width=250><INPUT class=absmiddle type=file name=attach[]> 
  <SPAN id=localfile[]></SPAN>&nbsp; <INPUT type=hidden 
  name=localid[]> </TD>
  <TD><INPUT size=25 name=attachdesc[]></TD>
  </TR>
  </TBODY>
  <TBODY id=attachbody>
   
  </TBODY>
  <TBODY>
  <TR class=altbg1>
  <TD colSpan=5>文件尺寸: 小于 102.4 kb <BR>可用扩展名: gif, jpg, jpeg, 
  png<BR></TD></TR></TBODY>
  </TABLE>
=======================================================

js
=======================================================
function findtags(parentobj, tag) {
if(!isUndefined(parentobj.getElementsByTagName)) {
return parentobj.getElementsByTagName(tag);
} else if(parentobj.all && parentobj.all.tags) {
return parentobj.all.tags(tag);
} else {
return null;
}
}

========================================================

newnode = $('attachbodyhidden').firstChild.cloneNode(true);
tags = findtags(newnode, 'input');
ie下没问题 firefox取不到

------解决方案--------------------
function findtags(parentobj, tag) { 
if(!isUndefined(parentobj.getElementsByTagName)) { 
return parentobj.getElementsByTagName(tag); 
} else if(parentobj.all && parentobj.all.tags) { 
return parentobj.all.tags(tag); 
} else { 
return null; 



改:
function findtags(parentobj, tag) { 
if(typeof(parentobj.getElementsByTagName)=="function") { 
return parentobj.getElementsByTagName(tag); 
} else if(parentobj.all && parentobj.all.tags) { 
return parentobj.all.tags(tag); 
} else { 
return null; 


试试。


------解决方案--------------------
支持自己解决问题的,你正逐步成为高手。