如何实现laravel-admin中select下拉联动功能的最佳方案?

2026-04-18 11:313阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计508个文字,预计阅读时间需要3分钟。

如何实现laravel-admin中select下拉联动功能的最佳方案?

在Laravel Admin项目中,需要实现一个需求:选择一个select选项后,同时联动赋值给select2、select3选项。已知Laravel Admin自带了+loads()方法,已尝试使用,如下所示:

php$form->select('goo', 'options')->load('goo', 'options');

在laravel-admin项目中需要完成一个需求:

选择一个select选项后,需要同时联动赋值给select2,select3选项

有了解到laravel-admin本身带有 ->loads() 方法,所以尝试使用了,如下:

$form->select('goods', __('商品名称'))->options(function(){ $list = []; $goods = Good::where('state',1)->get(); foreach ($goods as $k => $v) { $list[$v['id']] = $v['name']; } return $list; })->loads(['supplier_goods','purchaser_good'],['/api/getsuppliergoods','/api/getpurchasergoods']); $form->multipleSelect('supplier_goods', __('供应商商品')); $form->multipleSelect('purchaser_good', __('采购商商品'));

实际运行后,发现 supplier_goods 可以正常选择,但是 purchaser_good 选项框可以正常显示内容,但是无法选中内容,也没有发现报错。

将 multipleSelect 改为 select :$form->select('purchaser_good', __('采购商商品')); 再次运行,发现还是无法选择,并且在点击时会报如下错误:

经过一番查看,终于发现问题,原来是 '/api/getpurchasergoods' 对应的控制器里方法写的有问题。

官方的统一写法是 ->get(['id', DB::raw('purchaser_id as text')])->toarray();

但是这里由于我最初是想直接获取采购商id的,所以就改成:->get(['purchaser_id', DB::raw('purchaser_id as text')])->toarray();

因此可能导致了导致框架找不到对应的id,所以无法进一步选择操作。

相关推荐:最新的五个Laravel视频教程

以上就是如何解决laravel-admin select联动问题的详细内容,更多请关注自由互联其它相关文章!

如何实现laravel-admin中select下拉联动功能的最佳方案?

本文共计508个文字,预计阅读时间需要3分钟。

如何实现laravel-admin中select下拉联动功能的最佳方案?

在Laravel Admin项目中,需要实现一个需求:选择一个select选项后,同时联动赋值给select2、select3选项。已知Laravel Admin自带了+loads()方法,已尝试使用,如下所示:

php$form->select('goo', 'options')->load('goo', 'options');

在laravel-admin项目中需要完成一个需求:

选择一个select选项后,需要同时联动赋值给select2,select3选项

有了解到laravel-admin本身带有 ->loads() 方法,所以尝试使用了,如下:

$form->select('goods', __('商品名称'))->options(function(){ $list = []; $goods = Good::where('state',1)->get(); foreach ($goods as $k => $v) { $list[$v['id']] = $v['name']; } return $list; })->loads(['supplier_goods','purchaser_good'],['/api/getsuppliergoods','/api/getpurchasergoods']); $form->multipleSelect('supplier_goods', __('供应商商品')); $form->multipleSelect('purchaser_good', __('采购商商品'));

实际运行后,发现 supplier_goods 可以正常选择,但是 purchaser_good 选项框可以正常显示内容,但是无法选中内容,也没有发现报错。

将 multipleSelect 改为 select :$form->select('purchaser_good', __('采购商商品')); 再次运行,发现还是无法选择,并且在点击时会报如下错误:

经过一番查看,终于发现问题,原来是 '/api/getpurchasergoods' 对应的控制器里方法写的有问题。

官方的统一写法是 ->get(['id', DB::raw('purchaser_id as text')])->toarray();

但是这里由于我最初是想直接获取采购商id的,所以就改成:->get(['purchaser_id', DB::raw('purchaser_id as text')])->toarray();

因此可能导致了导致框架找不到对应的id,所以无法进一步选择操作。

相关推荐:最新的五个Laravel视频教程

以上就是如何解决laravel-admin select联动问题的详细内容,更多请关注自由互联其它相关文章!

如何实现laravel-admin中select下拉联动功能的最佳方案?