繁体   English   中英

验证码表单提交而无需重新加载页面

[英]Captcha form submit without reloading the page

我在需要验证码的页面中有以下代码:

<?php


/** Validate captcha */
if (!empty($_REQUEST['captcha'])) {

    if (empty($_SESSION['captcha']) || trim(strtolower($_REQUEST['captcha'])) !== $_SESSION['captcha']) {
 echo '<script type="text/javascript">'
   , 'fail();'
   , '</script>';
    }
    if (empty($_SESSION['captcha']) || trim(strtolower($_REQUEST['captcha'])) == $_SESSION['captcha']) {
        echo '<script type="text/javascript">'
   , 'success();'
   , '</script>';
    }

    $request_captcha = htmlspecialchars($_REQUEST['captcha']);


    unset($_SESSION['captcha']);


}
if (empty($_REQUEST['captcha'])) {
 echo '<script type="text/javascript">'
   , 'fail();'
   , '</script>';
    }

?>

该表格如下所示:

<form>
<img src="../captcha.php"/>

<input type="text" name="captcha" /></div>

<input name="submit">
</form>

关于captcha.php的信息,我认为这不是必需的,但是如果是这样,请告诉我。

我需要它来提交验证码而不刷新页面。

我已经尝试过了,但没有成功:

      $(function () {
        $('form').bind('click', function (event) {

event.preventDefault();// using this page stop being refreshing 

          $.ajax({
            type: 'POST',
            url: '',
            data: $('form').serialize(),
            success: function () {
              alert('form was submitted');
            }
          });

        });
      });

尝试将$('form').bind('click', function (event) {更改$('form').bind('submit', function (event) {

绑定到表单上的click事件几乎没有意义。 您或者想将click事件绑定在Submit按钮上,或者想将绑定事件绑定在表单上。 我建议使用后者,它涵盖了更多情况。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM