首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >通过ajax返回php json数据

通过ajax返回php json数据
EN

Stack Overflow用户
提问于 2018-09-03 07:16:08
回答 2查看 0关注 0票数 0

我想创建一个实时数据库搜索并通过json获取数据,但每次它给我(未定义)这是代码:

代码语言:javascript
复制
<?php
    if (isset($_POST['data'])) {
        $json = array('id' => '2', 'name' => 'john');
        echo json_encode($json);
    }
?>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        $('input').keyup(function(){
            var value= $('input').val();
            $.ajax({
                type: "POST",
                url: "project.php",
                data: {data: value},
                datatype: "json",
                success: function(json_data){
                    console.log(json_data.id);
                    console.log(json_data.name);
                }
            });
        });
    });
</script>
<input type="text" name="search" placeholder="looking for?">
<div id="feedback"></div>

我真的不知道为什么会这样,我希望得到一些反馈。

EN

回答 2

Stack Overflow用户

发布于 2018-09-03 15:50:00

显示的代码始终呈现表单和所有页面,如果要返回JSON内容,则应停止呈现页面:

尝试这样的事情:

代码语言:javascript
复制
<?php

    if (isset($_POST['data'])) {
        $json = array('id' => '2', 'name' => 'john');
        header('Content-Type: application/json; charset=utf-8');
        echo json_encode($json);
        die(); 
    }
?>

我的建议是使用不同的文件来显示视图和处理请求。

票数 0
EN

Stack Overflow用户

发布于 2018-09-03 16:27:57

代码语言:txt
复制
$(document).ready(function(){
    $('input').keyup(function(){
        var value= $('input').val();
        $.ajax({
            type: "POST",
            url: "project.php",
            data: {data: value},
            datatype: "json",
            success: function(json_data){
                console.log(json_data['id']);
                console.log(json_data['name']);
            }
        });
    });
});

在PHP中:

代码语言:txt
复制
$json = array('id' => '2', 'name' => 'john');
header('Content-Type: application/json; charset=utf-8');
echo json_encode($json);
die(); 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100002542

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档