Javascript 如何阻止表单提交进入循环?

Javascript 如何阻止表单提交进入循环?,javascript,jquery,Javascript,Jquery,这就是当前的情况,代码是不言自明的 表单Html <form id="register" action="example.com/signup" method="post" accept-charset="utf-8" enctype="multipart/form-data"> <input id="email" type="email" name="email"> <label for="email">Email</label>

这就是当前的情况,代码是不言自明的

表单Html

<form id="register" action="example.com/signup" method="post" accept-charset="utf-8" enctype="multipart/form-data">
    <input id="email" type="email" name="email">
    <label for="email">Email</label><br />

    <input id="password" type="password" name="password">
    <label for="password">Password</label>

    <button type="submit" name="register" id="submit" value="Submit">Submit</button>
</form>

但是表单提交进入循环,如何防止它发生?

您当前拥有的这段代码将再次启动提交回调

$(this).submit();
你不想这样-你只想
返回true
如果要继续提交,或
返回false如果你没有


另外,您不需要这个零件

event.stopPropagation();
event.preventDefault();

您当前拥有的这段代码将再次启动提交回调

$(this).submit();
你不想这样-你只想
返回true
如果要继续提交,或
返回false如果你没有


另外,您不需要这个零件

event.stopPropagation();
event.preventDefault();

如果表单进入无限循环,您的问题是您的条件,您能给我们您的条件吗?:)可能我错了,但如果您在submit()中调用$(this).submit(),这是一个递归。@user1551066是的,我理解,我需要从JavaScript函数提交表单。如果表单进入无限循环,您的问题是您的条件,您能给我们您的条件吗?:)可能是我错了,但是如果在submit()中调用$(this).submit(),这是一个递归。@user1551066是的,我理解,我需要从JavaScript函数提交表单。但是如何从JavaScript/JQuery提交表单呢?因为在其中一种情况下(这里提供的是一个精简的完成代码),我将自定义值附加到隐藏字段中,这些值必须提交到处理提交的PHP脚本中。单击提交“启动”表单提交。现在,由于您有回调,这些回调将首先执行(在提交发送到服务器之前),您可以在这些回调中取消提交,也可以更改表单中的任何数据。如果返回true,则提交实际上会发送到服务器(在返回之前,可以执行任何操作,包括附加自定义值…)。如果返回false,或者取消事件,那么提交将被取消(即不转到服务器),但是如何从JavaScript/JQuery提交表单?因为在其中一种情况下(这里提供的是一个精简的完成代码),我将自定义值附加到隐藏字段中,这些值必须提交到处理提交的PHP脚本中。单击提交“启动”表单提交。现在,由于您有回调,这些回调将首先执行(在提交发送到服务器之前),您可以在这些回调中取消提交,也可以更改表单中的任何数据。如果返回true,则提交实际上会发送到服务器(在返回之前,可以执行任何操作,包括附加自定义值…)。如果返回false,或取消事件,则提交将被取消(即不转到服务器)