W6-Javascript基础2-事件、表单

1.JavaScript HTML DOM 事件

onclick事件

对点击事件做出反应
当我们对元素进行点击想要引发相应的事件时,请向一个 HTML 事件属性添加 JavaScript 代码:

οnclick=JavaScript

下面用一个实例展示以下onclick事件的简单应用吧!

  • 事件1:单击文本并在下方显示相应文字。
  • 事件2:单击文本并在下方显示相应文字。
  • 事件3:输入相应文本
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<head>
<script>	
function changetext1(id){
//该方法会在单击后的文字下方显示以下指定文字
	id.innerHTML="hi";
}
function changetext2(id){
	id.innerHTML="是啊,好久不见!";
}
function changetext3(id) {
    // 用x获取 id="in" 的值,即获取输入的值
    var x;
    x = document.getElementById("in").value;
    id.innerHTML = x;
}
</script>
</head>
<body>
//h1标签调用changetext1方法
<h1 onclick="changetext1(pp1)">你好啊!</h1>
//为这个p标签起名,被h1中的方法识别并进行操作
<p id="pp1"></p> 	
<h1 onclick="changetext2(pp2)">好久不见!</h1>
<p id="pp2"></p> 	
<input id="in">
<h1 onclick="changetext3(pp3)">吃了么,您内!</h1>
<p id="pp3"></p> 
</body>
</html>

运行结果展示:
未单击时
在这里插入图片描述

单击每行文字/输入文字之后

在这里插入图片描述

当然我们还可以关联其他的事件,相互叠加使用。
这种单击并出现文字的事件还可以将文字变化的对象文字变换为自身,还可以不局限于单击的目标是文字,图片按钮等都可以哦。

2.JavaScript 表单验证

HTML 表单验证可以通过 JavaScript 来完成。

以下实例代码用于判断表单字段(fname)值是否存在, 如果不存在,就弹出信息,阻止表单提交:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<head>
<script>
function validateForm(){
var x=document.forms["myForm"]["fname"].value;
if (x==null || x==""){
  alert("姓必须填写");
  return false;
  }
}
</script>
</head>
<body>
	
<form name="myForm" action="demo-form.php" onsubmit="return validateForm()" method="post">
姓: <input type="text" name="fname">
<input type="submit" value="提交">
</form>
	
</body>
</html>

3.列表全选、列表左右选择

在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<style type="text/css">
			table{
				border: 1px solid #00aa00;
				width: 200px;
			}
		</style>
		<script type="text/javascript">
			function change(){
				var all = document.getElementById("checkbox_all");
				var cb = document.getElementsByName("v1");
				
				//判断全选按钮是否被选中
				if(all.checked){
					for(var i = 0; i < cb.length; i++){
						cb[i].checked = true;
					}
				}else{
					for(var i = 0; i < cb.length; i++){
						cb[i].checked = false;
					}
				}
			}
			
			//反选
			function reverse(){
				//获取所有的checkbox
				var cb = document.getElementsByName("v1");
				
				for(var i = 0; i < cb.length; i++){
					if(cb[i].checked){
						cb[i].checked = false;						
					}else{
						cb[i].checked = true;	
					}
				}
				
			}
		</script>
	</head>
	<body>
		<h1>请选择你的菜单!</h1>
		<table border="1" cellspacing="0" cellpadding="0">
			<tr>
				<th>全选<input type="checkbox" id="checkbox_all" onclick="change()"/></th>
				<th>食物</th>
				<th>原味</th>
				<th>麻辣</th>
				<th>椒盐</th>
				<th>孜然</th>
			</tr>
			<tr>
				<td><input type="checkbox" name="v1" /></td>
				<td>羊肉串</td>
				<td><input type="checkbox" name="v1" /></td>
				<td><input type="checkbox" name="personid" /></td>
				<td><input type="checkbox" name="personid" /></td>
				<td><input type="checkbox" name="personid" /></td>
			</tr>
			<tr>
				<td><input type="checkbox"  name="v1"/></td>
				<td>鸡皮串</td>
				<td><input type="checkbox" name="v1" /></td>
				<td><input type="checkbox" name="personid" /></td>
				<td><input type="checkbox" name="personid" /></td>
				<td><input type="checkbox" name="personid" /></td>
			</tr>
			<tr>
				<td><input type="checkbox"  name="v1"/></td>
				<td>金针菇串</td>
				<td><input type="checkbox" name="v1" /></td>
				<td><input type="checkbox" name="personid" /></td>
				<td><input type="checkbox" name="personid" /></td>
				<td><input type="checkbox" name="personid" /></td>
			</tr>
			<tr>
				<td><input type="checkbox"  name="v1"/></td>
				<td>鹌鹑蛋串</td>
				<td><input type="checkbox" name="v1" /></td>
				<td><input type="checkbox" name="personid" /></td>
				<td><input type="checkbox" name="personid" /></td>
				<td><input type="checkbox" name="personid" /></td>
			</tr>
		</table>
		
		<input type="button"  value="反选" onclick="reverse()"/>
	</body>
</html>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值