首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >javascript中的.all和Jquery中的.all的替代方案是什么?

javascript中的.all和Jquery中的.all的替代方案是什么?
EN

Stack Overflow用户
提问于 2017-08-22 17:38:09
回答 2查看 994关注 0票数 0

嗨,我有一个应用程序,它被抑制与兼容模式IE-5。在该应用程序中,他们使用javascript中的.all API从DOM中获取特定元素,该元素运行良好。但在Windows10Machine中,当我在IE-11浏览器中使用相同的应用程序时,它不支持.all。因此,请告诉我javascript或jquery中.all的替代选项。

例子:1

代码语言:javascript
复制
JSP:   

    <Table  id="testtable">
     <tr> </tr>
     <tr> </tr>
     <tr id="testrow">
      <td> <FONT size=1 face="Verdana, Arial"> 
          <INPUT class=list maxLength=12 size=3 name=prime1> 
          </FONT> Test Data1
     </td>
      <td> <FONT size=1 face="Verdana, Arial"> 
          <INPUT class=list maxLength=12 size=3 name=prime2> 
          </FONT> Test Data2
      </td>
      <td> <FONT size=1 face="Verdana, Arial"> 
           <INPUT class=list maxLength=12 size=3 name=prime3> 
          </FONT> Test Data3
      </td>
      <td> <FONT size=1 face="Verdana, Arial"> 
           <INPUT class=list maxLength=12 size=3 name=prime4> 
          </FONT> Test Data4
      </td>
      <td> <FONT size=1 face="Verdana, Arial"> 
           <INPUT class=list maxLength=12 size=3 name=prime5> 
           </FONT> Test Data5
      </td>
      <td> <FONT size=1 face="Verdana, Arial"> 
           <INPUT class=list maxLength=12 size=3 name=prime6> 
           </FONT> Test Data6
       </td>
     </tr>
    </Table>


Js:

function tablesample (tableId,rowId)
 {
 var tab = document.getElementById(tableId);
 var row = tab.rows(rowId);
 var tdc ;
 var count ;
 var colcount = row.cells.length;
 for(var i=2;i<colcount;i++)
  {
   tdc = row.cells[i];
   count = tdc.all.length; 
  } 
 }

}

当上面的js方法在到达tdc.all.length行时被触发时,我遇到了一个问题:“无法获得未定义或空的属性”长度“。它应该给长度为2,但它没有。请帮助我解决这个问题。

EN

回答 2

Stack Overflow用户

发布于 2017-08-22 17:45:04

使用.children --所有浏览器都支持它,而.all专用于IE的旧版本。

MSDN说,它不支持从Internet 11开始。

由于不受支持,tdc.all返回undefined。然后是undefined.length,这会给出错误Unable to get property "length" of undefined or null

票数 1
EN

Stack Overflow用户

发布于 2017-08-22 18:16:30

试试这个:

代码语言:javascript
复制
var tab = document.getElementById('testtable');
var row = tab.getElementsByTagName('tr')
var number_of_children = row.testrow.children.length;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45823827

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档