<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script type="text/javascript" src="jquery.js"></script>
</head>
<body>
<input name="a" value="123" οnclick="s()">点我额</input>
<input id="s" value="wwwwwwwwww" >再来一次</input>
</body>
<script>
function s(){
var qq = "http://www.as.com/iuy/jf/saj";
alert(qq.replace(/http:\/\/[^\/]+/,''));
alert(document.getElementById('s').value);
alert("name选中"+$("#a").val()+" ,"+$("#s").val());
}
</script>
</html>
运行试试!需要导入jquery.js插件
注意:name可以不唯一,id必须唯一
1.document.getElementsByName来选中name值,即使对应的name只有一个,也必须在后面跟[索引号]
2.getElementsByName中有字母s,而getElementById里没有,因为getElementsByName获取的是数组
3.通过DOM获取值用value,不是val(),也不是val,而jQuery通过Id获取的值用val(),这是区别
4.jQuery不能通过$("#name")的方式选中name,而$("#id")可以选中id
name适用范围:
button、input、meta、object、param、select、textarea、a、applet、form、frame、iframe、img、map
id适用范围:
所有
name与id的命名规则
id与name属性的取值,必须以英文字母开始([A-Za-z]),后面可跟随:
- 英文字母
- 数字([0-9])
- 连字符("-")
- 下划线("_")
- 冒号(":")
- 句点(".")
参考 :http://www.dreamdu.com/blog/2014/4/22/html_name_vs_id/
document.getElementsByName()
是根据控件名称获取这个控件对象,因为控件名称可以相同,返回的是一个对象数组。
document.getElementById() 是根据控件ID获取这个控件对象,因为控件ID唯一,返回的是一个对象。
document.getElementsByTagName() 是根据控件TAG获取这个控件对象,返回的是一个对象数组。
例如:
HTML中有控件如下:
<input type="radio" id="radio1" checked="checked" name="radiogroup1" value="1"/>
<input type="radio" id="radio2" name="radiogroup1" value="2"/>
<input type="radio" id="radio3" name="radiogroup1" value="3"/>
则:
document.getElementsByName('radiogroup1') 取得的是这三个控件,可以用 document.getElementsByName('radiogroup1')[0] 取得的是第一个控件。
document.getElementById('radio1')取得的是第一个控件,
document.getElementsByTagName('input') 取得的是这三个控件,
可以用document.getElementsByTagName('input')[0] 取得的是第一个控件。
getElementsByName('delID')返回的是所有名称为'delID'的控件组成的数组,数组就是一种集合。