1. 程式人生 > >location.search 表單提交的內容處理為物件

location.search 表單提交的內容處理為物件

<!DOCTYPE HTML>
<html>
<head>
<title>事件處理</title>
<meta charset="utf-8" />
</head>
<body>
	<a href="#top">to top</a>
 	<form>
		姓名:<input name="username"/><br>
		密碼:<input type="password" name="pwd"/><br>
    愛好:<input type="checkbox" name="favs" value="running"/>跑步
          <input type="checkbox" name="favs" value="swimming"/>游泳
          <input type="checkbox" name="favs" value="basketball"/>籃球
          <br>
		<input type="submit"/>
	</form>
  <script>
		function search2Obj(){//程式碼保護/驗證
			var params={};//定義要儲存內容的物件
			if(location.search!==""){
				//?username=lena&pwd=123456
				var search=location.search.slice(1);//去掉?
				//username=lena&pwd=123456
				var subStrs=search.split("&");//按&切割
				//[username=lena,pwd=123456]
				for(var sub of subStrs){
					var arr=sub.split("=");
					if(params[arr[0]]===undefined)
						params[arr[0]]=arr[1];
					else{
						params[arr[0]]=
							[].concat(params[arr[0]],arr[1])
					}
				}
			}
			return params;//存為物件返回
		}
		var params=search2Obj();
		console.log(params);
		var {username, pwd}=params;
		console.log(username,pwd);
  </script>
</body>
</html>