javascript 阻止默认行为的疑惑
<inputtype="reset"value="reset"id="rst"onClick="functionprev(e){e.preventDefault()}"/...
<input type="reset" value="reset" id="rst" onClick="function prev(e){e.preventDefault()}"/>这段代码应该和下面书写在<script></script>里的代码功效相同,但是下面代码参阻止默认行为,这一段却不行,这是为什么呢.
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
</head>
<body>
<form name="form1">
<input type="text"/>
<input type="reset" value="reset" id="rst" "/>
</form>
</body>
<script>
var a=document.getElementById("rst");
a.onclick=function stop(e){
e.preventDefault();
}
</script>
</html> 展开
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
</head>
<body>
<form name="form1">
<input type="text"/>
<input type="reset" value="reset" id="rst" "/>
</form>
</body>
<script>
var a=document.getElementById("rst");
a.onclick=function stop(e){
e.preventDefault();
}
</script>
</html> 展开
展开全部
两端代码的功效是不相同的,你最上面的那段代码点击后只不过是定义了一个函数prev,却没有实际动作,所以是没什么反应的。下面的代码则是把函数stop绑定到a对象的点击事件中,也就是说点击a后就会执行函数stop。所以两者是有本质区别的。
追问
定义prev后有动作啊,function prev(e){e.preventDefault()}
不是一具函数么
追答
它相当于
function prev(e){
e.preventDefault()
}
也就是说光是定义了一个函数,却没有执行它
微测检测5.10
2023-07-11 广告
2023-07-11 广告
IEC62133与en62133的区别如下:1. 认证机构不同:IEC62133是国际的标准,它以国际通用的标准进行生产;而en62133采用的是欧盟的标准,它使用欧盟的生产需求进行生产。2. 宗旨不同:IEC62133的宗旨是促进电气、电...
点击进入详情页
本回答由微测检测5.10提供
展开全部
<form name="form1">
<input type="text"/>
<input type="reset" value="reset" id="rst" onclick="event.preventDefault()"/>
</form>
这段代码可以阻止默认事件,原因是在onclick属性里写js代码,类似在原本行为上优先增加行为,不是赋值方法的操作。event对象为当前事件实例,优先调用终止默认操作就阻止了默认行为。
<input type="text"/>
<input type="reset" value="reset" id="rst" onclick="event.preventDefault()"/>
</form>
这段代码可以阻止默认事件,原因是在onclick属性里写js代码,类似在原本行为上优先增加行为,不是赋值方法的操作。event对象为当前事件实例,优先调用终止默认操作就阻止了默认行为。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询