FastAdmin列表实现自定义搜索及传值

背景

这段时间我在做一个FastAdmin二开的项目,其中有一个功能是搜索公司下拉框筛选出对应的公司部门,但是fastadmin给定的搜索中没有下拉框筛选,我们就需要自己去动手添加一个联动下拉框的功能,并且不能够影响到原有搜索。

要实现的效果如下

 首先,fastadmin给我们提供了一个开发实例,我们可以借鉴开发实例中的表格完整示例或者自定义搜索示例如下图

 列表上的搜索条件一般放在了js文件中我们需要找到示例的js文件

地址为:/public/assets/js/backed/example/bootstraptable.js

找到表格初始化  table.bootstrapTable 找到如下位置

 我们可以发现示例中的联动搜索使用的是Template  首先我们要在js中引入Template  那么我们需要在对应的index.html中找到categorytpl模板

如下图 

 他使用的是两个select标签  data-url是请求后台的地址 加载页面请求第一个select的值,当选择第一个select后会自动请求第二个select 

注意:以下代码是必须写的 其中的data-name与select中的name必须对应 想传几个值就需要写几个input  否则页面不会把值传到后台

<input type="hidden" class="operate" data-name="admin_id" value="=" />

我们来看一下data-url的地址请求

 注意:返回一定要是用$this->success 否则无法显示

现在刷新页面就可以看到信息了

到现在应该是可以搜索了吧 NO NO NO 点击提交会发现没有任何反映。这是怎么回事呢?

因为这个我们自定义的搜索参数,我们需要把它们放到后台的where条件中去,我们应该怎么放呢?再回到js文件中去 找到如下代码:

 它是用来追加搜索条件的我们刚才在html中添加name就可以在这里用到了

重点代码:

//这里可以动态赋值,比如从URL中获取admin_id的值,filter.admin_id=Fast.api.query('admin_id');
filter.admin_id = Fast.api.query('admin_id');
op.admin_id = "=";

我们可以将admin_id修改成为我们自己传过来的name这样我们就可以搜索了!

以上是示例中的演示 万变不离其宗 我们可以根据自己的需求去进行修改

希望可以帮助到大家!

  • 5
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
要在FastAdmin框架中实现自定义搜索框,你可以按照以下步骤进行操作: 1. 打开菜单管理页面。在FastAdmin框架中,通常可以通过`http://yourdomain/admin/menu/index`访问菜单管理页面。 2. 找到你想要添加自定义搜索框的菜单项。可以使用菜单管理页面提供的搜索功能来定位到特定的菜单项。 3. 编辑菜单项。进入菜单项编辑页面后,你可以看到一些可用的选项。 4. 在"参数"字段中添加自定义搜索框的配置。在参数字段中,你可以添加一些额外的配置以实现自定义搜索框的功能。具体的配置方式取决于你的需求,以下是一个示例: - 类型(type):可以设置为`search`表示是一个搜索框。 - 名称(name):指定搜索框的名称。 - URL(url):指定搜索请求提交的URL地址。 - 方法(method):指定搜索请求提交的方法,例如GET或POST。 - 参数(param):指定额外的参数,例如可以传递当前页面的URL参数。 例如,可以添加如下配置: ``` type=search name=custom_search url=/admin/custom/search method=GET param=menu_id:{:id} ``` 5. 创建对应的搜索处理方法。根据上述配置中指定的URL地址,在FastAdmin框架的控制器中创建对应的方法来处理搜索请求。在该方法中,你可以根据参数进行搜索逻辑的实现。 例如,在控制器中创建`admin/CustomController`,并添加以下方法: ```php public function search() { $menuId = $this->request->param('menu_id'); // 进行自定义搜索逻辑处理 // ... } ``` 6. 保存菜单项。完成配置后,点击保存按钮来保存菜单项的修改。 现在,你就完成了在FastAdmin框架中自定义搜索框的实现。请根据你的具体需求和框架版本进行配置和开发,以满足你的自定义搜索功能。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

❀想容

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值