如何在页面上显示php发送的jsonp响应

如何在页面上显示php发送的jsonp响应,php,jquery,json,ajax,jsonp,Php,Jquery,Json,Ajax,Jsonp,我有一个jsonp脚本,如下所示 <script> $(document).ready(function(){ $("#LoginForm").submit(function(){ var data = $(this).serialize(); //alert(data); $.ajax({ type:"POST", dataType:"jsonp", url:"https:/

我有一个jsonp脚本,如下所示

<script>
$(document).ready(function(){

    $("#LoginForm").submit(function(){

    var data = $(this).serialize();
    //alert(data);
    $.ajax({
            type:"POST",
            dataType:"jsonp",
            url:"https://akshay.tk/api/login.php",
            data:data,

            success:function(data)
            {       

                /// WHAT TO WRITE HER TO GET PHP RESPONSE
                /// DIV WHERE DATA TO BE SHOWN, ID IS RESULT    
            }

            });
    return false;
    });

});
</script>
一切都很顺利,当我使用开发人员工具时,我知道它也给出了正确的响应。 菲律宾政府的答复:

{"success":1,"uid":"1","username":"admin","role":"admin"}

我应该在jQuery SUCCESS函数中编写什么代码,以便获得php响应?

如果您想输出php抛出的结果作为ajax结果,那么

创建这样一个div

然后在成功事件中

 success:function(data)
{       
('#yourDiv').html(data);
}
注意:

如果你喜欢上课的话

取代

('.yourDiv').html(data);
其他数据:

最好像这样检查成功事件中的数据

当你得到这样的回应时

{“success”:1,“uid”:“1”,“username”:“admin”,“role”:“admin”}


我得到了很多答案 jQuery代码:

$("#submit").click(function(){

var myData = $("#LoginForm").serialize();

    $.ajax({
          method: "POST",
          dataType:"jsonp",
          url:"https://akshay.tk/api/login.php?callback=?",
          data: myData,

            success:function(msg)
            {
                alert(msg);                 
            }
        });

        return false;           
}); 
以及PHP代码中的细微更改

if(mysqli_num_rows($result) > 0) 
            {
                $user = mysqli_fetch_assoc($result);
                // user found           
                $response["success"] = 1;
                $response["uid"] = $user["id"];
                $response["username"] = $user["username"];
                $response["role"] = $user["role"];

                echo $_GET['callback'] . '(' . json_encode($response) . ')';
            }
我没有工作。我认为回调函数作为一个引用或其他东西得到内部调用,所以我们可以跨域工作


谢谢你

是的,我也试过了,但没用。。。。。。我从早上起就一直在做这件事。但是错误。它会显示在浏览器开发者工具上,但不会显示在网页上。如果你的
id
同名,它将无法工作。您应该尝试类。在成功事件中,您是否可以发出警报?不,我无法在成功事件中发出警报,至少在
$(“#LoginForm”)。提交(函数(){
$("#submit").click(function(){

var myData = $("#LoginForm").serialize();

    $.ajax({
          method: "POST",
          dataType:"jsonp",
          url:"https://akshay.tk/api/login.php?callback=?",
          data: myData,

            success:function(msg)
            {
                alert(msg);                 
            }
        });

        return false;           
}); 
if(mysqli_num_rows($result) > 0) 
            {
                $user = mysqli_fetch_assoc($result);
                // user found           
                $response["success"] = 1;
                $response["uid"] = $user["id"];
                $response["username"] = $user["username"];
                $response["role"] = $user["role"];

                echo $_GET['callback'] . '(' . json_encode($response) . ')';
            }