繁体   English   中英

AJAX成功与失败报告

[英]AJAX success and failure reporting

试图弄清楚如何仅在失败时在此弹出窗口内报告。 目前,此方法有效,但是它会警告成功和失败:

<script>
function Unlock() {
    var pin=prompt("You must enter pin to unlock");
    $.ajax(
    {
        url: 'pin.php',
        type: 'POST',
        dataType: 'text',
        data: {data : pin},
        success: function(response)
        {
            alert(response);
            console.log(response);
        }
    });
}
</script>

我已经尝试了以下方法,但是到目前为止还没有运气:

<script>
function Unlock() {
    var pin=prompt("You must enter pin to unlock");
    $.ajax(
    {
        url: 'pin.php',
        type: 'POST',
        dataType: 'text',
        data: {data : pin},
        success: function(response)
        {
            console.log(response);
        },
        error: function(response)
        {
            alert(response);
            console.log(response);
        }
    });
}
</script>

任何帮助,将不胜感激。 谢谢!

*编辑*

这是完整的代码:

<?php
    $static_password = "1234";
    if(isset($_POST['data'])){
        $submit_password = $_POST['data'];
        if($submit_password == $static_password){
            die("UNLOCK THE RECORD");
        }
        else{
            die("SORRY WRONG PIN");
        }
    }
?>
<html>
<head>
    <script src="js/jquery-3.1.1.min.js" type="text/javascript"></script>
</head>
<body>
<h2>Simple AJAX PHP Example</h2>
<a href="javascript:Unlock();">UNLOCK</a>
<p>Pin is "1234"</p>
<script>
function Unlock() {
    var pin=prompt("You must enter pin to unlock");
    $.ajax(
    {
        url: 'pin.php',
        type: 'POST',
        dataType: 'text',
        data: {data : pin},
        success: function(response)
        {
            alert(response);
            console.log(response);
        }
    });
}
</script>
</body>
</html>

为了执行错误回调,服务器必须以404、500(内部错误)等状态进行响应。当您写die('blah'); 服务器以200的状态响应,并以其终止的消息。 就AJAX和PHP而言, 这是一个成功的请求

您必须检查回复

if($submit_password == $static_password){
    die("UNLOCK THE RECORD");
}

然后:

success: function(response)
    {
       if (response == 'UNLOCK THE RECORD') { /* success */ }
       else { /* failure, do what you will */ }
    }

暂无
暂无

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

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