繁体   English   中英

Laravel - 根据选择选项显示数据库数据

[英]Laravel - Show db data based on select options

我是 laravel 的新手,所以请原谅我,如果这是一个愚蠢/明显的问题 - 如果是这样,我会删除......

我有一个下拉列表,其中显示了所有来自数据库的项目的各种口味。 我让这部分工作正常,但是我想要的是当你选择一种口味时,它会显示在该口味的营养信息下方,并在你改变口味时发生变化。

这是刀片中的选择:

    <select name="" id="">

        @foreach($flavours as $flavour)

        <option>{{ $flavour['name'] }}</option>

        @endforeach
        
    </select>

获取数据的简单控制器函数:

function show()
    {
        $data = Flavours::all();
        return view('flavours', ['flavours' => $data]);
    }

我在网上搜索了很多,以找到显示我需要的方法/视频,但是我找不到任何东西。

有2种方式。
1 - 每次更改选择标记值时,您都必须通过 ajax 获取新数据。
2 - 如果您不喜欢它,您可以使用关键字和完整列表获取所需的数据。

    <select name="flavour" id="flavour">

        @foreach($flavours as $flavour)

        <option value="{{$flavour['id']}}" >{{ $flavour['name'] }}</option>

        @endforeach
        
    </select>


$("#flavour").change(function(){
  id=$(this).val();
  const flavour_list = <?php echo $flavours; ?>;
  const goal = flavour_list.find(item => item.id === id);
  console.log({goal})
});

暂无
暂无

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

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