zoukankan      html  css  js  c++  java
  • document.all用法

    document.all是页面内所有元素的一个集合。例如:document.all(0)表示页面内第一个元素

    document.all可以判断浏览器是否是IE

    <script language="javascript">
    if(document.all)
    {
    	alert("IE");
    }
    </script>

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

    代码①

    <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>

    代码②

    错误:

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

    正确:

    <input name=aaa value=a1>
    <input   name=aaa   value=a2>
    <input   id=bbb   value=bbb>
    <script language="javascript">  
    alert(document.all.aaa(0).value);//显示a1  
    alert(document.all.aaa(1).value);//显示a2  
    alert(document.all.bbb.value);
    </script> 
    

    代码③

    理论上一个页面中的id是互不相同的,如果出现不同tags有相同的id

    document.all.id就会失败,就象这样:

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

    对于一个复杂的页面(代码很长,或者id是由程序自动产生)或着一个

    javascript初学者写的程序,很有可能出现两个tags有相同id的情况。

    为了编程的时候不出错,我推荐这样的写法:

    <input id=aaa value=aaa1>  
    <input name=aaa value=aaa2>  
    <input name=bbb value=bbb1>  
    <input id=bbb value=bbb2>  
    <input id=ccc value=ccc>  
    <input name=ddd value=ddd>  
    <script language="javascript">  
    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.value);
    alert(document.all.ddd.value);
    </script>
    
  • 相关阅读:
    CSS 文本换行及指定行数显示
    JavaScript随机生成六位数
    Vue 添加评论,node作后台保存到MongoDB数据库中
    详情页面中根据ID请求数据
    多线程学习笔记
    串口 PLC 编程FAQ
    NI CWGraph 显示波形图
    华为企业级AS111-S,比较垃圾的地方
    jqmobile FAQ
    给easyui datebox扩展一个清空按钮,无侵入
  • 原文地址:https://www.cnblogs.com/laonanren/p/2971616.html
Copyright © 2011-2022 走看看