poa*_*oas 0 javascript forms inline submit
我试图在表单上放置一个内联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>
Run Code Online (Sandbox Code Playgroud)
并且函数的参数是事件还是表单元素?
在内联Javascript中,this始终是元素本身.event可用作内联Javascript的本地变量,因此您可以编写:
<form onsubmit="return (function(event){console.log(event); return false;})(event);">
Run Code Online (Sandbox Code Playgroud)
由于您正在使用IIFE,因此其return语句将从函数返回,但不会从事件处理程序返回.您需要返回IIFE返回的内容.
我不确定你为什么要使用IIFE,你可以写:
<form onsubmit="console.log(event); return false;">
Run Code Online (Sandbox Code Playgroud)