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>
展开
 我来答
网海1书生
科技发烧友

2015-07-07 · 擅长软件设计、WEB应用开发、小程序
网海1书生
采纳数:12311 获赞数:26231

向TA提问 私信TA
展开全部
两端代码的功效是不相同的,你最上面的那段代码点击后只不过是定义了一个函数prev,却没有实际动作,所以是没什么反应的。下面的代码则是把函数stop绑定到a对象的点击事件中,也就是说点击a后就会执行函数stop。所以两者是有本质区别的。
追问
定义prev后有动作啊,function prev(e){e.preventDefault()}
不是一具函数么
追答
它相当于

function prev(e){
e.preventDefault()
}

也就是说光是定义了一个函数,却没有执行它
微测检测5.10
2023-07-11 广告
IEC62133与en62133的区别如下:1. 认证机构不同:IEC62133是国际的标准,它以国际通用的标准进行生产;而en62133采用的是欧盟的标准,它使用欧盟的生产需求进行生产。2. 宗旨不同:IEC62133的宗旨是促进电气、电... 点击进入详情页
本回答由微测检测5.10提供
神殿丶无名
2015-07-07 · TA获得超过172个赞
知道答主
回答量:74
采纳率:63%
帮助的人:14.5万
展开全部
<form name="form1">
<input type="text"/>
<input type="reset" value="reset" id="rst" onclick="event.preventDefault()"/>
</form>
这段代码可以阻止默认事件,原因是在onclick属性里写js代码,类似在原本行为上优先增加行为,不是赋值方法的操作。event对象为当前事件实例,优先调用终止默认操作就阻止了默认行为。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式