|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
所包含元素的特性要么由自身Div标签的属性来控制,要么是请CSS帮忙来进行控制。如果是多层嵌套的Div,可能会严重影响代码的可阅读性,
第一种注释:
HTML元素的ID和Name属性的区分
一向以为ID和NAME是一样的,两个又能够一同呈现,甚是困惑。
明天BAIDU了一下,才发明内里年夜有文章。收回来研讨研讨:
最classical的谜底:ID就像是一团体的身份证号码,而Name就像是他的名字,ID明显是独一的,而Name是能够反复的。
明显这个ID和Name的解答说的太笼统了,固然谁人注释关于ID来讲是完整对的,它就是Client端HTML元素的Identity。而Name实在要庞大的多,由于Name有良多种的用处,以是它其实不能完整由ID来取代,从而将其作废失落。详细用处有:
用处1:作为可与服务器交互数据的HTML元素的服务器真个标示,好比input、select、textarea、和button等。我们能够在服务器端依据其Name经由过程Request.Params获得元素提交的值。
用处2:HTML元素Inputtype=radio分组,我们晓得radiobutton控件在统一个分组类,check操纵是mutex的,统一工夫只能选中一个radio,这个分组就是依据不异的Name属性来完成的。
用处3:创建页面中的锚点,我们晓得<ahref="URL">link</a>是取得一个页面超等链接,假如不必href属性,而改用Name,如:<aname="PageBottom"></a>,我们就取得了一个页面锚点。
用处4:作为工具的Identity,如Applet、Object、Embed等元素。好比在Applet工具实例中,我们将利用其Name来援用该工具。
用处5:在IMG元素和MAP元素之间联系关系的时分,假如要界说IMG的热门地区,必要利用其属性usemap,使usemap="#name"(被联系关系的MAP元素的Name)。
用处6:某些特定元素的属性,如attribute,meta和param。比方为Object界说参数<PARAMNAME="appletParameter"VALUE="value">或Meta中<METANAME="Author"CONTENT="DaveRaggett">。
明显这些用处都不是能复杂的利用ID来取代失落的,以是HTML元素的ID和Name的却别并非身份证号码和姓名如许的区分,它们更本就是分歧感化的器材。
转帖:http://tieba.baidu.com/f?kz=194837029
第二种注释:
能够说几近每一个做过Web开辟的人都问过,究竟元素的ID和Name有甚么区分阿?为何有了ID还要有Name呢?!而一样我们也能够失掉最classical的谜底:ID就像是一团体的身份证号码,而Name就像是他的名字,ID明显是独一的,而Name是能够反复的。
上周我也碰到了ID和Name的成绩,在页面里输出了一个inputtype="hidden",只写了一个ID=SliceInfo,赋值后submit,在背景用Request.Params["SliceInfo"]却怎样也往不到值。厥后名顿开因该用Name来标示,因而在input里加了个Name=SliceInfo,就统统ok了。
第一段里关于ID和Name的解答说的太笼统了,固然谁人注释关于ID来讲是完整对的,它就是Client端HTML元素的Identity。而Name实在要庞大的多,由于Name有良多种的用处,以是它其实不能完整由ID来取代,从而将其作废失落。详细用处有:
用处1:作为可与服务器交互数据的HTML元素的服务器真个标示,好比input、select、textarea、和button等。我们能够在服务器端依据其Name经由过程Request.Params获得元素提交的值。
用处2:HTML元素Inputtype=radio分组,我们晓得radiobutton控件在统一个分组类,check操纵是mutex的,统一工夫只能选中一个radio,这个分组就是依据不异的Name属性来完成的。
用处3:创建页面中的锚点,我们晓得<ahref="URL">link</a>是取得一个页面超等链接,假如不必href属性,而改用Name,如:<aname="PageBottom"></a>,我们就取得了一个页面锚点。
用处4:作为工具的Identity,如Applet、Object、Embed等元素。好比在Applet工具实例中,我们将利用其Name来援用该工具。
用处5:在IMG元素和MAP元素之间联系关系的时分,假如要界说IMG的热门地区,必要利用其属性usemap,使usemap="#name"(被联系关系的MAP元素的Name)。
用处6:某些特定元素的属性,如attribute,meta和param。比方为Object界说参数<PARAMNAME="appletParameter"VALUE="value">或Meta中<METANAME="Author"CONTENT="DaveRaggett">。
明显这些用处都不是能复杂的利用ID来取代失落的,以是HTML元素的ID和Name的却别并非身份证号码和姓名如许的区分,它们更本就是分歧感化的器材。
固然HTML元素的Name属性在页面中也能够起那末一点ID的感化,由于在DHTML工具树中,我们可使用document.getElementsByName来猎取一个包括页面中一切指定Name元素的工具数组。Name属性另有一个成绩,当我们静态创立可包括Name属性的元素时,不克不及复杂的利用赋值element.name="..."来增加其Name,而必需在创立Element时,利用document.createElement(<elementname="myName"></element>)为元素增加Name属性。这是甚么意义啊?看上面的例子就分明了。<scriptlanguage="JavaScript">
varinput=document.createElement(INPUT);
input.id=myId;
input.name=myName;
alert(input.outerHTML);
</script> 动静框里显现的了局是:<INPUTid=myId>。<scriptlanguage="JavaScript">
varinput=document.createElement(<INPUTname="myName">);
input.id=myId;
alert(input.outerHTML);
</script> 动静框里显现的了局是:<INPUTid=myIdname=myName>。
初始化Name属性的这个计划不是IE的缺点,由于MSDN里说了要这么做的,但是如许计划的道理甚么呢?我临时没有想太分明
。
这里再特地说一下,如果页面中有n(n>1)个HTML元素的ID都不异了怎样办?在DHTML工具中怎样援用他们呢?假如我们利用ASPX页面,如许的情形是不简单产生的,由于aspnet历程在处置aspx页面时基本就不同意有ID非独一,这是页面会被抛出非常而不克不及被一般的render。如果不是静态页面,我们硬要让ID反复那IE怎样弄呢?这个时分我们仍是能够持续利用document.getElementById猎取工具,只不外我们只能猎取ID反复的那些工具中在HTMLRender时第一个呈现的工具。而这时候反复的ID会在援用时主动酿成一个数组,ID反复的元素按Render的按次顺次存在于数组中。
转帖:http://www.ckuyun.com/birdshome/archive/2005/01/31/99562.html
方便性:课外,我们了解到现在流行的LBS系统、PJBLOG、php下面的WP、MT,都是采用Div+css构架。在平时的练习中我们就遇到过 |
|