【问题标题】:Combining PHP and jQuery Validation结合 PHP 和 jQuery 验证
【发布时间】:2011-03-26 19:18:59
【问题描述】:

我有一个表单(用于密码重置),它首先验证输入是正确的电子邮件,然后它应该在我的用户数据库中查找该电子邮件的存在,最后重置密码并将新密码通过电子邮件发送给用户。

我什么都能做,但我想让它在不刷新页面的情况下工作。通常我会在 PHP 中完成这一切,如果我的数据库中没有这样的电子邮件条目,它会在页面刷新后回复。问题是,我希望此页面用作 POST 的文件能够在不刷新的情况下将数据发送回页面,无论是否显示错误。

我将使用 jQuery $.post()。有什么帮助吗?

这是我的 jQuery 帖子代码:

 $.post('php/recoverPost.php', $('#recoverPost').serialize(), function(){
                $('#recoverPost').hide();
                $('#success').show();
            });

【问题讨论】:

    标签: php jquery validation


    【解决方案1】:

    你可以这样做:

    $('#registerform').submit(function() {
        e.preventDefault();
        $.ajax({
            'url': 'posturl.php',
            'type': 'POST',
            'data': {
                'email': $('#email').val(),
                'username': $('#username').val()
            },
            'success':function(data) {
                if(data == 'success') {
                    alert('did it!');
                } else {
                    alert('I failed!');
                }
             }
        });
    });
    

    如果你让 posturl.php echo 'success' 如果电子邮件不存在,这将起作用。

    【讨论】:

    • 这正是我想做的,但我正在尝试使用 $.post() 而不是 $.ajax()
    • @teuneboon 发布的代码与$.post() 的作用相同,只是方法更长。 (我实际上更喜欢自己这样做)。见:api.jquery.com/jQuery.post
    【解决方案2】:
    $("#form").submit(function(event) {
        event.preventDefault(); 
        $.post( url,  ,$('#recoverPost').serialize(),
          function( data ) {
              $('#recoverPost').hide();
              $('#success').show();
          }
        );
      });
    

    【讨论】:

      猜你喜欢
      • 2011-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多