JS的document.all函数使用 示例

一. 
document.all是页面内所有元素的一个集合。例如: 
document.all(0)表示页面内第一个元素 
二. 
document.all可以判断浏览器是否是IE 
if(document.all){ 
alert("is IE!"); 

三. 
也可以通过给某个元素设置id属性(id=aaaa),然后用document.all.aaaa调用该元素 
四. 
案例: 

代码1: 

复制代码代码如下:

<input name=aaa value=aaa> 
<input id=bbb value=bbb> 
<script language=Jscript> 
alert(document.all.aaa.value) //根据name取value 
alert(document.all.bbb.value) //根据id取 value 
</script> 


代码2: 
但是常常name可以相同(如:用checkbox取用户的多项爱好的情况) 

复制代码代码如下:

<input name=aaa value=a1> 
<input name=aaa value=a2> 
<input id=bbb value=bbb> 
<script language=Jscript> 
alert(document.all.aaa(0).value) //显示a1 
alert(document.all.aaa(1).value) //显示a2 
alert(document.all.bbb(0).value) //这行代码会失败 
</script> 


代码3: 
理论上一个页面中的id是互不相同的,如果出现不同tags有相同的id 
document.all.id 就会失败,就象这样: 

复制代码代码如下:

<input id=aaa value=a1> 
<input id=aaa value=a2> 
<script language=Jscript> 
alert(document.all.aaa.value) //显示 undefined 而不是 a1或者a2 
</script> 


代码4: 
对于一个复杂的页面(代码很长,或者id是由程序自动产生),或着一个 
javascript初学者写的程序,很有可能出现两个tags有相同id的情况。 
为了编程的时候不出错,我推荐这样的写法: 

复制代码代码如下:

<input id=aaa value=aaa1> 
<input id=aaa value=aaa2> 
<input name=bbb value=bbb> 
<input name=bbb value=bbb2> 
<input id=ccc value=ccc> 
<input name=ddd value=ddd> 

<script language=Jscript> 
alert(document.all("aaa",0).value) 
alert(document.all("aaa",1).value) 
alert(document.all("bbb",0).value) 
alert(document.all("bbb",1).value) 
alert(document.all("ccc",0).value) 
alert(document.all("ddd",0).value) 
</script> 


删除了筛选器的表或列。

 注释

此函数不能由自身使用,而是作为可用于更改某个其他计算的执行结果集的临时函数。

<主题状态:本主题中的一些信息为预发布文档,在将来的版本中可能会有更改。预发布信息介绍 Microsoft SQL Server 2014 社区技术预览 1 (CTP1) 的新功能以及对现有功能的更改。如果使用“标记为日期表”将 [Column] 标记为 Date 列

如下表所述,您可以在不同环境下使用 ALL 和 ALLEXCEPT 函数。

 

函数和用法

说明

ALL(Table)

从指定表中删除所有筛选器。 实际上,ALL(Table) 返回表中的所有值,并且删除上下文中可能已应用的任何筛选器。

在您使用具有很多级别的分组并且想要创建计算(该计算创建聚合值与总值的比率)时,该函数很有用。 第一个示例演示这一情况。

ALL (Column[, Column[, …]])

删除表中指定列的所有筛选器;表中针对其他列的所有其他筛选器仍应用。 所有列参数必须都来自同一个表。

在您想要删除一个或多个特定列的上下文筛选器并且要保留所有其他上下文筛选器时,此 ALL(Column) 变量很有用。

第二个和第三个示例演示这种情况。

ALLEXCEPT(Table, Column1 [,Column2]...)

删除表中所有上下文筛选器,但已应用于指定列的筛选器除外。

在您想要删除针对表中许多列(但不是所有列)的筛选器时,这是一个方便快捷的方法。

原文地址:https://www.cnblogs.com/zj911005/p/9377786.html