表单验证
form 可以直接给后端提交数据
不用form --- ajax提交数据给后端
表单事件
onsubmit 表单提交事件 form才可以使用此事件
onfocus 获取焦点 表单事件 , window也有 focus也会触发click事件
onblur 失去焦点 表单事件 , window也有
onchange 失去焦点并发生改变
oninput 输入时触发事件
两个方法
focus() 获取焦点方法
blur() 失去焦点方法
var oForm = document.querySelector('form') ;
oForm.onsubmit = function (e) {
// alert(666) 阻止 默认
e.preventDefault()
}
复制粘贴事件
oncopy
onpaste
右键菜单事件
oncontextmenu
限制输入字符案例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<input type="text">
<span>还剩10个字符</span>
<script>
var oInp = document.querySelector('input') ;
var oSpan = document.querySelector('span') ;
oInp.oninput = function () {
var sy = 10 - this.value.length ;
oSpan.innerHTML = `还剩${sy}个字符`
oSpan.style.color = 'black'
if(sy <= 0) {
this.value = this.value.substr(0 , 9) ;
oSpan.innerHTML = '不能在输入超过10个字符'
oSpan.style.color = 'red'
}
}
</script>
</body>
</html>
键盘事件:
keyup 触发一次
keydown 持续性触发
keypress 按压 = down 持续性触发 部分功能键不触发
键盘事件的键值
key 键值
keyCode 键值对应的ASCII值 (都会识别为小写)
组合键(altKey / shiftKey / ctrlKey)
ctrl+回车 = 确认
console.log(e.shiftKey); // 判断是否按了shift键 辅助键
console.log(e.altKey); // 判断是否按了alt键 辅助键
console.log(e.ctrlKey); // 判断是否按了ctrl键 辅助键