首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >无法获取json数据

无法获取json数据
EN

Stack Overflow用户
提问于 2018-04-23 20:51:19
回答 2查看 55关注 0票数 0

我正在尝试在Laravel项目中制作动态下拉列表。所以我尝试使用Jquery和Ajax来实现。我使用以下脚本来完成我的工作:

代码语言:javascript
代码运行次数:0
运行
复制
<script type="text/javascript">
    $('#country').on('change', function(){
        var country_id = $('#country').val();
        var op=" ";
        alert(country_id);
        $.ajax({
            type:'GET',
            url:'{{route('getBranch')}}',
            data:{'id':country_id},
            success:function(data){
                console.log(data);
                alert(data[0].branch_name);
                }
            }
        });
    });
</script>

现在,我的“on change”正在工作,我可以通过警报看到这一点。它正在获取国家/地区ID。此国家/地区ID在我的‘分支’表中保存为country_id。我正在尝试使用country_id从'branch‘表中获取数据。当我使用alert()查看数据时,它显示'undefined‘。我的路线是:

代码语言:javascript
代码运行次数:0
运行
复制
Route::get('/get_branch',[
'as' => 'getBranch',
'uses' => 'EmployeeInfoController@countryBranch',
'title' => 'Getting Branch Name'
]);

此路由应命中控制器中的以下函数:

代码语言:javascript
代码运行次数:0
运行
复制
public function countryBranch(Request $request){
    $country_id = $request->id;
    $branch = Branch::where('country_id',$country_id)->get();
    return response()->json($branch);
}

这是我第一次使用Jquery和Ajax。所以我什么都不知道。我正在遵循其他人的代码来实现这一点。但它似乎对我不起作用。我正在使用带有XAMPP的Laravel 5.5。

EN

回答 2

Stack Overflow用户

发布于 2018-04-23 20:56:20

这是因为get()返回集合,而json()方法接受一个数组,所以在获得结果后使用toArray()

你可以这样试一下

代码语言:javascript
代码运行次数:0
运行
复制
public function countryBranch(Request $request){
    $country_id = $request->id;
    $branch = Branch::where('country_id',$country_id)->get()->toArray();
    return response()->json($branch);
}

希望这能有所帮助

票数 0
EN

Stack Overflow用户

发布于 2018-04-24 12:55:41

谢谢大家。今天早上我已经弄清楚了这个问题。实际上,我正在做一个Office管理项目。因此,我们创建的路由必须被允许使用。我忘了这一点,被困在这里了。当我允许用户的路由时,一切都开始工作了。现在它已经完全具备了功能。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49981584

复制
相关文章

相似问题

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