通過name或者id獲取value
<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" onclick="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'的控制元件組成的陣列,陣列就是一種集合。