当前位置: 代码迷 >> HTML/CSS >> HTML里 关于 name 跟 id
  详细解决方案

HTML里 关于 name 跟 id

热度:9703   发布时间:2013-02-26 00:00:00.0
HTML里 关于 name 和 id

<script type="text/javascript">
function fun(){
document.getElementsByName("haha").reset();
}
</script>
</script>
<body>
<form name="haha"><!--这里要实现姓名和座号重置,要用id ,用name没有反应-->
    姓名:<input type="text" /><br />
座号:<input type="text" /><br />
<input type="button" value="重置" onClick="fun()"><br />
</form>
 </body>


 </head>
<script type="text/javascript">
function check(){
document.getElementsByName("myCheck").checked=true
}
function uncheck(){
document.getElementsByName("myCheck").checked=false
}
</script>
</head>
<body>
<form>
<input type="checkbox" name="myCheck" /><!--这里也不能用name...用了id才有反应-->
<input type="button" onclick="check()" value="选定复选框" />
<input type="button" onclick="uncheck()" value="取消选定复选框" />
</form>
 </body>



<head>
<script type="text/javascript">
function check(browser)
  {
  document.getElementById("answer").value=browser
  }
</script>
</head>
<body>

<p>您喜欢哪款浏览器?</p>

<form>
<input type="radio" name="browser" onclick="check(this.value)" value="Internet Explorer">Internet Explorer<br />
<input type="radio" name="browser" onclick="check(this.value)" value="Firefox">Firefox<br />
<input type="radio" name="browser" onclick="check(this.value)" value="Netscape">Netscape<br />
<input type="radio" name="browser" onclick="check(this.value)" value="Opera">Opera<br />
<br />
<!--写到这里纳闷了特久,为什么例题的name就可以单选,我改成Id后就变成多选 并且勾了还不能取消-->
您喜欢的浏览器是:<input type="text" id="answer" size="20">
</form>

</body>


初学,也上网了查了一下NAM和ID两个的用法区别,但看不大懂,请前辈指教一下 究竟什么时候要用name 什么时候要用id。像上面三种情况究竟两者是怎么回事?

------解决方案--------------------------------------------------------
name:
1、表单提交的时候数据通过name来获取
2、做锚点
3、Object等可以通过name来引用

id
1、唯一标示符, 通常用来得到该元素,比如document.getElementById

当然得到元素也可以用name,document.getElementsByTagName,这样得到的是一个数组,需要再通过其它的标示符来确定元素,比如class、title,总之id是唯一的。
------解决方案--------------------------------------------------------
才发现我把楼主的第二个代码看漏了,我说的第二个是指楼主的第三个.
第二个也是和第一个同样的错误:
function check(){     document.getElementsByName("myCheck").checked=true } 
function uncheck(){     document.getElementsByName("myCheck").checked=false } 
应该改成:
function check(){     document.getElementsByName("myCheck")[0].checked=true } 
function uncheck(){     document.getElementsByName("myCheck")[0].checked=false } 
  相关解决方案