想要html表单提交什么都不做

Ste*_*ums 58 html javascript forms ajax submit

我希望html表单在提交后不执行任何操作.

action="" 
Run Code Online (Sandbox Code Playgroud)

不好,因为它会导致页面重新加载.

基本上我想要在按下按钮或在键入数据后某人点击"输入"时调用ajax函数.是的我可以删除表单标签并添加从按钮的onclick事件中调用该函数,但我也想要"点击输入"功能而不会得到所有的hackish.

Jef*_*ake 78

通过return false;在您从提交按钮调用的javascript中使用,您可以停止提交表单.

基本上,您需要以下HTML:

<form onsubmit="myFunction(); return false;">
<input type="submit" value="Submit">
</form>
Run Code Online (Sandbox Code Playgroud)

然后支持javascript:

<script language="javascript"><!--
function myFunction() {
    //do stuff
}
//--></script>
Run Code Online (Sandbox Code Playgroud)

如果您愿意,您还可以通过某些条件允许脚本提交表单:

<form onSubmit="return myFunction();">
<input type="submit" value="Submit">
</form>
Run Code Online (Sandbox Code Playgroud)

搭配:

<script language="JavaScript"><!--
function myFunction() {
    //do stuff
    if (condition)
        return true;

    return false;    
}
//--></script>
Run Code Online (Sandbox Code Playgroud)

  • 缺少`function`关键字:`function myFunction(){}` (3认同)

小智 8

它也有效:

<form id='my_form' action="javascript:myFunction(); return false;">
Run Code Online (Sandbox Code Playgroud)

  • 虽然这没有什么作用,但是控制台上写着"Uncaught SyntaxError:Illegal return statement". (2认同)

小智 8

<form id="my_form" onsubmit="return false;">
Run Code Online (Sandbox Code Playgroud)

足够 ...