提交仅在第二次点击时有效

我有一个带有Google reCaptcha验证的表格。但是现在我必须单击两次提交按钮。我找不到原因。

我的表单是这样构建的(聪明):

<form method="post" id="form">
   <input type="hidden" name="action" value="misdaden">
     <table>
        {foreach from=$misdaden item=item}
           <tr>
                <td class="coll">{$item['id']}</td>
                <td class="coll">{$item['name']}</td>
                <td class="coll">{$item['minmoney']}</td>
                <td class="coll">{$item['maxmoney']}</td>
                <td class="coll">{$item['difficulty']}</td>
                <td class="coll">{$item['percentage']}%</td>
                <td class="coll"><input type="radio" style="width:20px;" name="value" value={$item['id']} /></td>
           </tr>
        {/foreach}
    </table>
    <input type="submit" value="Misdaad plegen!" name="submit" class="submit" />
    <!--input class="button good large" name="submit" type="submit" value="Pleeg misdaad!"-->
</form>

我的脚本是(JQuery):

$('#form').submit(function(e) {
    e.preventDefault();
    grecaptcha.ready(function() {
    grecaptcha.execute('6LesiMAUAAAAAAJ8G94kKbXxJj62_U2ajn-dzJzF',{action:'misdaden'})
              .then(function(token) {
                    $('#form').prepend('<input type="hidden" name="token" value="'+ token +'">');
                    $('#form').unbind('submit').submit();
                });
    });
});

我可能缺少明显的东西,但是呢?

jayoyhjay 回答:提交仅在第二次点击时有效

在jquery脚本中,您不需要为执行验证码时绑定表单的提交事件处理程序。 只需提交表格,见下文

$(document).ready(function() {
    grecaptcha.ready(function() {
    grecaptcha.execute('6LesiMAUAAAAAAJ8G94kKbXxJj62_U2ajn-dzJzF',{action:'misdaden'})
              .then(function(token) {
                    $('#form').prepend('<input type="hidden" name="token" value="'+ token +'">');
                    $('#form').submit();
                });
    });
});
本文链接:https://www.f2er.com/3124327.html

大家都在问