• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
    當(dāng)前位置: 首頁 - 科技 - 知識(shí)百科 - 正文

    document.getElementsByName和document.getElementById 在IE與FF中不同實(shí)現(xiàn)

    來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 22:44:50
    文檔

    document.getElementsByName和document.getElementById 在IE與FF中不同實(shí)現(xiàn)

    document.getElementsByName和document.getElementById 在IE與FF中不同實(shí)現(xiàn):對(duì)于ID & Name 按最經(jīng)典的解釋的:ID 就如同我們的身份證,Name就如同我們的名字,也就是說,在一個(gè)html文檔中ID是唯一的,但是Name是可以重復(fù)的,就象我們的人名可以重復(fù)但是身份證確實(shí)全中國唯一的(PS:據(jù)說有重復(fù)的^_^) 但是對(duì)于document
    推薦度:
    導(dǎo)讀document.getElementsByName和document.getElementById 在IE與FF中不同實(shí)現(xiàn):對(duì)于ID & Name 按最經(jīng)典的解釋的:ID 就如同我們的身份證,Name就如同我們的名字,也就是說,在一個(gè)html文檔中ID是唯一的,但是Name是可以重復(fù)的,就象我們的人名可以重復(fù)但是身份證確實(shí)全中國唯一的(PS:據(jù)說有重復(fù)的^_^) 但是對(duì)于document

    對(duì)于ID & Name 按最經(jīng)典的解釋的:“ID 就如同我們的身份證,Name就如同我們的名字”,也就是說,在一個(gè)html文檔中ID是唯一的,但是Name是可以重復(fù)的,就象我們的人名可以重復(fù)但是身份證確實(shí)全中國唯一的(PS:據(jù)說有重復(fù)的^_^)
    但是對(duì)于document.getElementsByName 與document.getElementById 這個(gè)兩個(gè)方法,IE中是并沒有嚴(yán)格區(qū)分 ID 與 Name 的,比如:
    <script type="text/javascript">
    function useGetElementsByNameWithId(id) {
    var eles = document.getElementsByName('ID_A');
    var msg = '使用 getElementsByName 傳入 ID:得到:'
    if(eles.length > 0) {
    msg += " Name " + eles[0].id;
    }
    alert(msg);
    }
    function usegetElementByIdWithName(name) {
    var ele = document.getElementById(name);
    var msg = '使用 getElementById 傳入 Name 得到:';
    if(ele) {
    msg += " ID " + ele.id;
    }
    alert(msg);
    }
    </script><input id="ID_A" name="Name_A" type="button" value="使用 getElementsByName 傳入 ID" onclick="useGetElementsByNameWithId(this.id)" />
    <input id="ID_B" name="Name_B" type="button" value="使用 getElementsByName 傳入 Name" onclick="usegetElementByIdWithName(this.name)" />IE中通過 getId 傳入 name 同樣可以訪問到目標(biāo)元素,而通過 getName 傳入 Id 也可以訪問到目標(biāo)元素。
    MSDN中對(duì)兩個(gè)方法的解釋:
    getElementById Method
    --------------------------------------------------------------------------------
    Returns a reference to the first object with the specified value of the ID attribute.
    Remarks
    When you use the getElementsByName method, all elements in the document that have the specified NAME or ID attribute value are returned.
    Elements that support both the NAME and the ID attribute are included in the collection returned by the getElementsByName method, but not elements with a NAME expando.
    MSDN確實(shí)對(duì) getElementsByName 方法做了說明:“具有指定 Name 或者 ID 屬性的元素都會(huì)返回”,但是
    getElementById 方法卻沒有說明,然而內(nèi)部實(shí)現(xiàn)同 getElementsByName 是一樣的。
    而對(duì)于FF,看來更忠實(shí)W3C標(biāo)準(zhǔn),上面的測(cè)試代碼是沒有辦法返回目標(biāo)元素的。
    W3C 中的相關(guān)信息:
    http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-one-html.html#ID-26809268
    由于有這個(gè)問題,所以對(duì)ASP.NET 控件中諸如 radiobuttonlist checkboxlist,使用客戶端腳本通過getElementsByName訪問具有name屬性的成組對(duì)象時(shí)就要注意了,因?yàn)閞adiobuttonlist 默認(rèn)會(huì)呈現(xiàn)一個(gè)table來包容這些radio,而這個(gè)table id 與這些radio的name時(shí)相同的,比如:
    .aspx
    <asp:radiobuttonlist id="RadioButtonList1" runat="server">
    <asp:listitem>opt1</asp:listitem>
    <asp:listitem>opt2</asp:listitem>
    <asp:listitem>opt3</asp:listitem>
    </asp:radiobuttonlist>HTML:
    <table id="RadioButtonList1" border="0">
    <tr>
    <td><input id="RadioButtonList1_0" type="radio" name="RadioButtonList1" value="opt1" /><label for="RadioButtonList1_0">opt1</label></td>
    </tr><tr>
    <td><input id="RadioButtonList1_1" type="radio" name="RadioButtonList1" value="opt2" /><label for="RadioButtonList1_1">opt2</label></td>
    </tr><tr>
    <td><input id="RadioButtonList1_2" type="radio" name="RadioButtonList1" value="opt3" /><label for="RadioButtonList1_2">opt3</label></td>
    </tr>
    </table>
    在IE中使用 document.getElementsByName('RadioButtonList1') 就是返回四個(gè)元素了,第一個(gè)元素是那個(gè)id為 RadioButtonList1 的table,
    如果客戶端需要有這樣的script,也為代碼的跨瀏覽器帶來了的麻煩。
    注:radiobuttonlist可以選擇“流布局”呈現(xiàn),同樣會(huì)生成一個(gè)類似的外圍<span/>來做為容器,也會(huì)產(chǎn)生這個(gè)問題。

    聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    document.getElementsByName和document.getElementById 在IE與FF中不同實(shí)現(xiàn)

    document.getElementsByName和document.getElementById 在IE與FF中不同實(shí)現(xiàn):對(duì)于ID & Name 按最經(jīng)典的解釋的:ID 就如同我們的身份證,Name就如同我們的名字,也就是說,在一個(gè)html文檔中ID是唯一的,但是Name是可以重復(fù)的,就象我們的人名可以重復(fù)但是身份證確實(shí)全中國唯一的(PS:據(jù)說有重復(fù)的^_^) 但是對(duì)于document
    推薦度:
    • 熱門焦點(diǎn)

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 精品久久人妻av中文字幕| 国产精品日韩欧美制服| 国产精品高清一区二区三区 | 亚洲国产综合精品一区在线播放| 精品国内片67194| 久久国产精品成人片免费| 亚洲精品国产va在线观看蜜芽| 丰满人妻熟妇乱又伦精品劲| jiucao在线观看精品| 精品一区二区三区自拍图片区| 亚洲国产精品无码久久98| 日韩精品欧美激情国产一区| 国自产精品手机在线观看视频| 国产精品成| 99久久精品久久久久久清纯| 精品国产91久久久久久久| 97久久综合精品久久久综合| 精品国产福利一区二区| 欧美精品hdvideosex4k| 亚洲永久精品ww47| 亚洲午夜福利精品久久| 亚洲精品偷拍视频免费观看| 久久精品国产亚洲AV不卡| 国产亚洲精品AA片在线观看不加载 | 野狼第一精品社区| 亚洲综合欧美精品一区二区| 日韩欧美一区二区三区中文精品| 久久精品视屏| 午夜在线视频91精品 | 精品乱码一区二区三区四区| 日韩精品亚洲人成在线观看| 亚洲av无码乱码国产精品| 亚洲精品卡2卡3卡4卡5卡区| 最新国产成人精品2024| 中国国产精品| 人人妻人人澡人人爽人人精品97| 久久精品国产亚洲AV电影| 国产乱人伦偷精品视频AAA| 精品人妻人人做人人爽| 国产精品亚洲一区二区三区在线| 国产精品国产精品国产专区不卡|