getElementById:IE问题

时间:2016-04-26 16:50:53

标签: javascript

IE 11中的document.getElementById出现问题,需要检索一个长网址为{id}的div

示例:

<div id="http://localhost:8084/group/control_panel/manage?p_auth=2kVqRblu&p_p_id=swcportaluploadData_WAR_swcportaluploadDataportlet&p_p_lifecycle=1&p_p_state=maximized&p_p_mode=view&doAsGroupId=20182&refererPlid=20185&controlPanelCategory=current_site.content&_swcportaluploadData_WAR_swcportaluploadDataportlet_javax.portlet.action=loadCsvData&_swcportaluploadData_WAR_swcportaluploadDataportlet_fileName=CIS_Contact.xlsx"></div>

我得到一个null,但id是唯一的。 在Google Chrome上按预期工作。

错在哪里?特殊字符?

PS:它适用于简单的ID:<div id="hello">

1 个答案:

答案 0 :(得分:1)

HTML4不允许像本定义中提到的那样进行削减:

  

ID和NAME令牌必须以字母([A-Za-z])开头,后面可以跟任意数量的字母,数字([0-9]),连字符(&#34; - &#34 ;),下划线(&#34; _&#34;),冒号(&#34;:&#34;)和句号(&#34;。&#34;)。

IE仍然执行该标准。

如果您想使用网址,请将网址存储在data-url属性中。