使用多个ajax请求删除帐户

时间:2013-09-12 06:55:41

标签: javascript php jquery ajax

用户在点击按钮(删除)时可以选择删除他的帐户 - 他也必须输入密码才能这样做。 所以我在上面描述了第一个ajax请求。如果仍有预订(这是一个预订网络应用程序),如果他还是要重新考虑,那么从服务器返回的WHat就是一个响应 - 一条消息出现。< / p>

如果他坚持删除他的帐户,那么他必须再次点击删除按钮。 问题(如果您没有注意到)是通过再次单击删除按钮,上面的过程重复进行,同时现在的目标 - 出现警告消息后 - 单击删除按钮意味着“是,尽管我想要预订删除我的帐户“。

因此,此删除按钮必须具有双重角色,一个在警告出现之前,另一个在警告之后。 在这样的情况下我该怎么办?我正在考虑实施一个确认框,但上面都是在模态框中进行的。所以在模态上的确认框我认为不是正确的解决方案。

以下是用户首次单击删除按钮时发送的ajax请求:

  $('.deactivate').click(function(){
     event.preventDefault();

        var trimmeddelpass=$.trim($('input#del_password').val());

  if(trimmeddelpass!=="")
        {   $.ajax({
           type: "POST",
           url: "delaccountajax.php",
           data: {"delpass":trimmeddelpass},
           success:function(data){
           if(data==2)
           {$('#warning').html('You have still bookings pending');
            $('#warning').show();
             }
           else if(data==3)
        { window.location.href = "../Frontend/login.php";//proceed deleting the account
            }

           error:function(jxhr){ 
           alert(jxhr.responseText);}
           });
        }

这是服务器代码:

  $output=delete_account($conn,$delpass,$sessionml);
  if($output=='2')
  {$success='2';}
  elseif($output=='3')
  {logout();
  $success='3';}
  echo $success;

上面的两个代码都是简化版本,因为其他一些东西也在其中,但是我们正在处理的问题不需要它们。

我在实施您建议的代码时遇到问题......当然这是正确的解决方案但是......看看发生了什么,这里是代码:

  $('.deactivate').click(function(){
     event.preventDefault();
   deletestate=0;
 if(deletestate==0)

           { $.ajax({
           type: "POST",
           url: "delaccountajax.php",
           data: {"delpass":trimmeddelpass},
           success:function(data){
           if(data==2)
           {$('#warning').html('You have booking pending');
            $('#warning').show();
            deletestate=1
            }....
if(deletestate==1){....}

上面的代码总是将全局deletestate设置为0,稍后将其设置为1无效...我该怎么做?

0 个答案:

没有答案