JavaScript DOM表单相关操作之表单相关事件

1、焦点事件

焦点事件就是鼠标的光标事件,点到输入框中,叫做获得焦点事件,当鼠标离开这个输入框时叫做失去焦点事件。

javascript 复制代码
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>知数SEO_专注搜索引擎优化和品牌推广</title>
</head>
<body>
<form>
    <h3>输入框获得和失去焦点触发对应的事件</h3>
    <input type="text" name="username">
</form>
</body>
<script>
    var obj= document.getElementsByName('username')[0]; // 获取表单元素对象
    obj.onfocus = function (){
        console.log('获得焦点');
    }
    obj.onblur = function (){
        console.log('失去焦点');
    }
</script>
</html>

2、onchange事件

在实际项目开发中,有关表单方面还有一个radio和checkbox类型的表单选中事件也非常常用

javascript 复制代码
// onchange事件在radio表单类型中的应用
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>知数SEO_专注搜索引擎优化和品牌推广</title>
</head>
<body>
<form>
    <h3>radio触发onchange事件</h3>
    <input type="radio" name="sex" value="男" onchange="change(this)">男<br>
    <input type="radio" name="sex" value="女" onchange="change(this)">女<br>
</form>
</body>
<script>
    function change(obj){
        var value = obj.value; // 获取对象的值
        console.log(value); // 打印获取的值
    }
</script>
</html>

// onchange事件在checkbox表单类型中的应用
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>知数SEO_专注搜索引擎优化和品牌推广</title>
</head>
<body>
<form>
    <h3>checkbox触发onchange事件</h3>
    <input type="checkbox" name="hobby" value="Python" onchange="change(this)">Python<br>
    <input type="checkbox" name="hobby" value="PHP" onchange="change(this)">PHP<br>
</form>
</body>
<script>
    function change(obj){
    	if (obj.checked == true){
			var value = obj.value; // 获取对象的值
        	console.log(value); // 打印获取的值
		}
    }
</script>
</html>

// onchenge事件在select下拉框中的使用
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>知数SEO_专注搜索引擎优化和品牌推广</title>
</head>
<body>
<form>
    <h3>select触发onchange事件</h3>
    <select name="city" id="city">
        <option value="北京">北京</option>
        <option value="上海">上海</option>
        <option value="广州">广州</option>
    </select>
</form>
</body>
<script>
    // 获取select选择框对象
    var obj = document.getElementsByName('city')[0];
    // 绑定onchange事件
    obj.onchange = function (){
        console.log(this.value);
    }
</script>
</html>

3、表单提交事件

onsubmit事件会在我们点击submit类型的按钮时被触发,这个事件经常被用在表达提交的时候进行数据验证,当用户提交的数据不合法时则拒绝提交。

javascript 复制代码
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>知数SEO_专注搜索引擎优化和品牌推广</title>
</head>
<body>
<form id="myForm" action="https://www.zhishunet.com">
    <h3>submit按钮触发onsubmit事件</h3>
    <input type="submit" value="提交表单">
</form>
</body>
<script>
    // 获取form表单
    var obj = document.getElementById('myForm');
    obj.onsubmit = function (){
        console.log('您点击了submit按钮');
        return false;  // 返回false阻止提交
    }
</script>
</html>

// 注意
// onsubmit事件必须让这个事件返回false才能阻止表单的提交
相关推荐
幸运小猿11 小时前
模拟慢上传-处理超时重试image 丢失线上问题
前端·javascript·html
速易达网络13 小时前
ECharts 图表制作完全指南:从零到可视化实战
前端·javascript·echarts
paopaokaka_luck14 小时前
灾害应急物资管理系统(AI应急助手、Echarts可视化数据看板、捐赠入库联动、 物资全流程管理、库存变动追溯、灾情资讯与互动反馈、物资发放公示)
java·前端·javascript·spring boot·mysql·tomcat·echarts
kyriewen14 小时前
我验了 7 种 sticky 失效说法:3 种根本不成立
前端·javascript·程序员
我命由我1234516 小时前
Python 实用操作 - 文件操作(打开与关闭文件、读取文件、文件写入)
java·开发语言·前端·javascript·数据库·python·java-ee
Momo__16 小时前
你写的 import 重试,从来没生效过
前端·javascript·typescript
tryCbest17 小时前
Vue3——第 11 篇:组合式 API(上)——setup 与响应式 API 深度解析
前端·javascript·vue.js
tryCbest18 小时前
Vue3——第 13 篇:计算属性与侦听器——computed 与 watch 的进化
前端·javascript·vue.js
用户1179536547818 小时前
企业团队编程软件怎么选:AI编程工具的协作与落地能力对比
javascript
believed_breadfruit18 小时前
我开源了一个HTML 分页导出工具,解决了复杂页面的内容截断、跨页错乱和长文档白屏问题
前端·javascript·github