老师这段代码看不懂啊,感觉一下子跨度好大

来源:4-15 编程练习

黯丶晓

2018-12-23 15:58:03

form.addEventListener("invalid", function(event) {
            event.preventDefault();
        }, true);
        form.addEventListener("submit", function(event) {
            if (!this.checkValidity()) {
                event.preventDefault();
            }
        });

这里面的addEventListener老师说的是监听,具体什么意思我也不知道?还有event跟preventDefault是什么意思?这题我都感觉无从下手,虽然是上节课老师讲的,但是听得云里雾里,我自己单独写完全不知道应该怎么写


写回答

1回答

好帮手慕星星

2018-12-24

同学你好,上一小节中讲的是一个综合实例。首先表单验证是要有效果的,老师不可能只给大家讲api,不讲真实的效果和性能,这样是对大家不负责任,学完之后还是不知道学的这些东西的真实作用。因此,在这个课程中,老师是结合实际的开发例子,综合为大家展示了H5中是如何处理表单验证问题的,一定是综合的考量。

1、addEventListener() 方法用于向指定元素添加事件句柄。

用法:element.addEventListener(event, function, useCapture)

三个参数:

event:必须。字符串,指定事件名。不要使用 "on" 前缀。 例如,使用 "click" ,而不是使用 "onclick"。

function:必须。指定要事件触发时执行的函数。 

useCapture:可选。布尔值,指定事件是否在捕获或冒泡阶段执行。(true - 事件句柄在捕获阶段执行,false- false- 默认。事件句柄在冒泡阶段执行)

这个方法就是给元素添加事件的,从而执行什么操作。并且这个方法在jquery事件中已经讲到过了:

http://img.mukewang.com/climg/5c2042950001732d09440678.jpg

http://img.mukewang.com/climg/5c20426e0001cdd916430663.jpg

自己可以再回顾一下。

2、oninvalid事件:当提交的input元素的值为无效值时,触发oninvalid事件。

3、每一个事件都有一个event对象,代表事件的状态,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态。event.preventDefault()是阻止默认事件,在这段代码中阻止的是触发oninvalid事件时显示的默认气泡。在第三阶段中会有event对象的讲解,在这可以先了解一下:

http://img.mukewang.com/climg/5c2041040001ef7111800451.jpg

4、onsubmit 事件会在表单中的确认按钮被点击时发生,也就是表单提交的时候会被触发。

自己可以再理解一下老师实现小例子的大致思路,边理解边敲代码,相信自己会弄懂的。如果遇到问题,可以继续提问,老师会帮助你解决问题的。

祝学习愉快!

0

0 学习 · 5012 问题

查看课程