第八次网页前端培训笔记

获取表单(前两种常用)

1、document.getElementById("id属性值")

通过from标签的id属性值获取表单对象

<from id="myform1" name="myform1" action=""></from>

<script type="text/javascript">console.log(document.getElementById("myform1"));</script>

2、document.表单的name属性值

通过表单的name属性值获取表单对象

<from id="myform2" name="myform2" action=""></from>

<script type="text/javascript">console.log(document,myform2);</script>

3、document.forms[下标]

通过指定下标获取表单元素

4、document.forms[表单的name属性值]

通过表单的name属性值获取表单对象

document.forms获取HTML文档中所有的表单对象

获取表单元素

1、获取input元素

(1)document.getElementById("id属性值")

通过元素的id属性值获取表单元素对象

(2)表单对象.表单元素的name属性值

通过表单对象中对应的元素的name属性值获取表单对象

(3)document.getElementByName("name属性值")

通过表单元素的name属性值获取

(4)document.getElementByTagName("标签名/元素名")

通过标签名获取表单元素对象

2、获取单选按钮

注:相同的一组单选按钮,需要设置相同的name属性值

(1)document.getElementByName("name属性值")

通过name属性值获取

(2)判断单选按钮是否选中

checked选中状态

在JS代码中,checked=true表示选中,checked=false表示不选中

在HTML标签中,checked=checked或checked表示选中,不设置checked属性表示不选中

(3)获取单选按钮的值

元素.value;

3、获取多选按钮

与单选按钮相同

4、获取下拉选项

(1)获取下拉框对象

var对象=document.getElementById("id属性值")

(2)获取下拉框的下拉选项列表

var options=下拉框对象.options;

(3)获取下拉框被选中项的索引

var index = 下拉框对象.selectedIndox;

(4)获取下拉框被选中项的值

var 值=下拉框对象.value;

(5)通过选中项的下标获取下拉框被选中项的值

var 值=下拉框对象.options[index].value;

(6)获取下拉框被选中项的文本

var 文本值=下拉框对象.options[index].text;

注:1、获取下拉框选中项的值时:(value)

如果option标签设置了value属性值,则获取value属性对应的值

如果option标签未设置value属性值,则获取的是option双标签中的文本值

2、下拉框的选中状态

选中状态:selected=selected、selected、selected=true

未选中状态:不设置selected属性、selected=false

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
	</head>
	<body>
		<from id="myform1" name="myform1" action=""></from>
		<from id="myform2" name="myform2" action=""></from>

		<form id="myform" name="myform" action="" method="get">
			姓名:<input type="text" id="uname" name="uname" value="zs" /><br />
			密码:<input type="password" id="upwd" name="upwd" value="1234" /><br />
			<input type="hidden" id="uno" name="uno" value="隐藏域" /><br />
			个人说明:<textarea name="intro"></textarea>
			<br />
			<button type="button" onclick="getTxt();">获取元素内容</button>

			<select id="ufrom" name="ufrom">
				<option value="">请选择</option>
				<option value="Beijing" selected="selected">北京</option>
				<option value="Shanghai">上海</option>
				<option>杭州</option>
			</select>
			<button type="button" onclick="getSelect()">获取下拉选项</button>
		</form>

		<script type="text/javascript">
			console.log(document.getElementById("myform1"));
			console.log(document, myform2);
			console.log("-----------");
			console.log(document.forms);
			console.log(document.forms[0]);
			console.log(document.forms['myform2']);

			function getTxt() {
				var uname = document.getElementById("uname").value;
				console.log(uname);
				var pwd = document.getElementById("myform").upwd.value;
				console.log(pwd);
				var uno = document.getElementsByName("uno")[0].value;
				console.log(uno);
				var intro = document.getElementsByTagName("Textarea")[0].value;
				console.log(intro);

			}

			function getSelect() {
				var ufrom = document.getElementById("ufrom");
				console.log(ufrom);
				var opts = ufrom.options;
				console.log(opts);
				var index = ufrom.selectedIndex;
				console.log("选中项的下标 " + index);
				var val = ufrom.value;
				console.log("选中项的下标 " + val);
				var val2 = ufrom.options[index].value;
				console.log("选中项的下标 " + val2);
				var txt = ufrom.options[index].text;
				console.log("选中项的下标 " + txt);
			}
		</script>

	</body>
</html>

提交表单

一、使用普通按钮 type="button"

1、给按钮绑定click点击事件,绑定函数

2、在函数中,进行表单校验(非空校验、合法性校验等)

3、如果校验通过,则手动提交表单   表单对象.submit

二、使用提交按钮 type="submit"

1、给按钮绑定click点击事件,绑定函数

2、函数需要有返回值,返回true或false(如果return false,则表单不会提交;如果return true,则表单提交)

3、在函数中,进行表单校验(非空校验、合法性校验等)

4、如果校验通过,返回true,如果校验不通过,则返回false

三、使用提交按钮 type="submit"

1、给表单from元素绑定submit提交事件,绑定函数

2、函数需要有返回值,返回true或false(如果return false,则表单不会提交;如果return true,则表单提交)

3、在函数中,进行表单校验(非空校验、合法性校验等)

4、如果校验通过,返回true,如果校验不通过,则返回false

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<form id="myform" name="myform" action="http://www.baidu.com" method="get">
			姓名:<input name="uname" id="uname" />&nbsp;
			<span id="msg" style="font-size: 12px;color: red;"></span><br />
			<button type="button" onclick="SubmitForm1()">提交</button>
		</form>
		<hr />
		<form id="myform2" action="http://www.baidu.com" method="get">
			姓名:<input name="uname2" id="uname2" />&nbsp;
			<span id="msg2" style="font-size: 12px;color: red;"></span><br />
			<button type="submit" onclick="return SubmitForm2()">提交</button>
		</form>
		<hr />
		<form id="myform3" action="http://www.baidu.com" method="get" onsubmit="return SubmitForm3()">
			姓名:<input name="uname3" id="uname3" />&nbsp;
			<span id="msg3" style="font-size: 12px;color: red;"></span><br />
			<button type="submit">提交</button>
		</form>
		<script type="text/javascript">
			function SubmitForm1(){
				var uname=document.getElementById("uname").value;
				if (isEmpty(uname)){
					document.getElementById("msg").innerHTML="*姓名不能为空";
				}
				
				document.getElementById("myform").submit();
			}
			function isEmpty(str){
				if(str == null||str.trim() ==""){
					return true;
				}
				return false;
			}
			function SubmitForm2(){
				var uname=document.getElementById("uname2").value;
				if (isEmpty(uname)){
					document.getElementById("msg2").innerHTML="*姓名不能为空";
					return false;
				}
				return true;
			}
			function SubmitForm3(){
				var uname=document.getElementById("uname3").value;
				if (isEmpty(uname)){
					document.getElementById("msg3").innerHTML="*姓名不能为空";
					return false;
				}
				return true;
			}
		</script>
		
		
	</body>
</html>

Ajax------异步无刷新技术

原生Ajax的实现流程

1、得到XMLHttpRequest();

var xhr = new XMLHttpRequest();

2、打开请求

xhr.open(method,url,async);

method 请求方式,通常是get|post

url 请求地址

async 是否异步。如果是true表示异步,false表示同步

3、发送请求

xhr.send(params);

params 请求时需要传递的参数

如果是get请求,设置null。(get请求的参数设置在url后面)

如果是post请求,无参数设置为null,有参数则设置参数

4、接收响应

xhr.status 响应状态(200=响应成功,404=资源未找到,500=服务器异常)

xhr.responseText 得到响应文本

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">
			function text01() {
				var xhr = new XMLHttpRequest();
				xhr.open("get", "js/date.json", false);
				xhr.send(null);
				if (xhr.status == 200) {
					console.log(xhr.responseText);
				} else {
					console.log("状态码:" + xhr.status + ",原因:" + xhr.responseText)
				}
				console.log("同步请求...");
			}

			function text02() {
				var xhr = new XMLHttpRequest();
				xhr.open("get", "js/date.json", true);
				xhr.send(null);
				xhr.onreadystatechange = function(){
					if(xhr.readyState == 4){
						if (xhr.status == 200) {
							console.log(xhr.responseText);
						} else {
							console.log("状态码:" + xhr.status + ",原因:" + xhr.responseText)
						}
					}
				}
				
				console.log("异步请求...");
			}
			text02();
		</script>
	</body>
</html>

来源自:【优极限】 HTML+CSS+JavaScript+jQuery前端必学教程,小白教学,前端基础全套完成版_哔哩哔哩_bilibiliicon-default.png?t=M0H8https://www.bilibili.com/video/BV1sf4y1k7dr?p=61&spm_id_from=pageDriver

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

劲劲龙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值