Ajax返回值

时间:2017-10-26 18:17:48

标签: php ajax

我试图弄清楚如何将值发送回Ajax弹出框。目前,返回的值只是从API调用返回的JSON。我宁愿使用jsondecode来获取一个特定的值并获得该返回,或者......甚至不能让那么复杂。我只想设置一个等于某些消息的变量,例如" API GET complete"并将其返回到Ajax框。这也有助于排除故障,所以我可以返回一个变量来查看是否有效。正如我所说,目前Ajax弹出窗口只显示从API调用返回的JSON。这是我第一次使用Ajax和curl_setopt,所以如果你能用例子提出建议,那就太棒了!谢谢!

的test.html

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $('.button').click(function(){
        var clickBtnValue = $(this).val();
        var ajaxurl = 'auto.php',
        data =  {'action': clickBtnValue};
        $.post(ajaxurl, data, function (response) {
            alert(response);
        });
    });

});
</script>
</head>
<body>
    <input type="submit" class="button" name="test" value="Test" />
</body>
</html>

auto.php

<?php
if (isset($_POST['action'])) {
    switch ($_POST['action']) {
        case 'Test':
            Test();
            break;
        case 'to_the_n':
            to_the_n();
            break;
    }
}
function Test() {
    $ch = curl_init('https://api.digitalocean.com/v2/droplets?tag_name=MYTAG');
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: Bearer MYTOKEN','Content-Type: application/json'));
    $result = curl_exec($ch);
    $message = "Yay it worked" //Send this message back to Ajax popup, not the API reply
    exit;
}
?>

*更新*

enter image description here enter image description here

*更新*

enter image description here

1 个答案:

答案 0 :(得分:2)

你可以只回显来自php的值,它会在Ajax成功函数中被提醒。

echo 'Yay it worked!! ';

<?php
if (isset($_POST['action'])) {
switch ($_POST['action']) {
    case 'Test':
       if(Test() == true) {
       echo('yay it worked!! '); 
       exit; 
       }
        break;
    case 'to_the_n':
        to_the_n();
        break;
}
}
function Test() {
$ch = curl_init('https://api.digitalocean.com/v2/droplets?tag_name=MYTAG');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: Bearer MYTOKEN','Content-Type: application/json'));
$result = curl_exec($ch);
return true; 
}
?>