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

本文详细介绍了HTML表单中的焦点事件(onfocus和onblur)、onchange事件在radio、checkbox和select的应用,以及onsubmit事件用于数据验证和表单提交的示例。
摘要由CSDN通过智能技术生成

1、焦点事件

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

<!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类型的表单选中事件也非常常用

// 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类型的按钮时被触发,这个事件经常被用在表达提交的时候进行数据验证,当用户提交的数据不合法时则拒绝提交。

<!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才能阻止表单的提交
  • 21
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值