我正在尝试在表单上放置一个内联onsubmit脚本,但它不起作用:
<!DOCTYPE html>
<html>
<head></head>
<body>
<form onsubmit="(function(event){console.log(event); return false;})(this);">
<button type="submit">Submit</button>
</form>
</body>
</html>
是事件或表单元素的函数的参数吗?
答案 0 :(得分:5)
在内联Javascript中,this
始终是元素本身。 event
可用作内联Javascript的本地变量,因此您可以编写:
<form onsubmit="return (function(event){console.log(event); return false;})(event);">
由于您正在使用IIFE,因此return
语句将从函数返回,但不会从事件处理程序返回。您需要返回IIFE返回的内容。
我不确定你为什么要使用IIFE,你可以写:
<form onsubmit="console.log(event); return false;">