动态生成下拉菜单时的拼接

有时候我们希望下拉菜单不仅仅显示title这一个数据,这时候可以在ea.listen()之前给对应select设置一个回调函数.

例子

  1. add: function () {
  2. $('select[name="field_id"]').data('template',function(data,fields){
  3. return data['title']+'('+data['unit']+')';
  4. })
  5. ua.listen();
  6. },

需要在form表单中,对select设置field字段:

  1. <div class="layui-form-item">
  2. <label class="layui-form-label">数据格式</label>
  3. <div class="layui-input-block">
  4. <select name="field_id" lay-verify="required" data-select="{:url('data.field/index')}" lay-search data-fields="id,title,unit" >
  5. </select>
  6. </div>
  7. </div>

注意,data-fields填写了三个字段,可以根据需要天蝎更多

最终效果如下:

PHP生成下拉菜单时的拼接

使用PHP生成下拉菜单时,没有依赖其他代码逻辑,直接在对应代码修改即可.

当使用表关联并且设置了下拉菜单字段时,会生成这样的代码:

控制器

注意看,这里向试图传递了一个列表.

  1. public function __construct(App $app)
  2. {
  3. parent::__construct($app);
  4. $this->model = new \app\admin\model\FarmSensorFormat();
  5. $this->assign('getFarmSensorFunctionList', $this->model->getFarmSensorFunctionList());
  6. // ...
  7. }
模型

在模型里查询这样一个列表

  1. public function getFarmSensorFunctionList()
  2. {
  3. return \app\admin\model\FarmSensorFunction::column('title', 'id');
  4. }

我们可以把这个查询改成正常的select查询

  1. public function getFarmSensorFunctionList()
  2. {
  3. return \app\admin\model\FarmSensorFunction::select()
  4. }
视图

生成的视图是这样

  1. <div class="layui-form-item">
  2. <label class="layui-form-label">传感器类型</label>
  3. <div class="layui-input-block">
  4. <select name="function_id" lay-verify="required" data-value="{$Request.param.function_id}">
  5. <option value=''></option>
  6. {foreach $getFarmSensorFunctionList as $k=>$v}
  7. <option value='{$k}' {in name="k" value="$row.id"}selected=""{/in} >{$v}</option>
  8. {/foreach}
  9. </select>
  10. </div>
  11. </div>

我们可以把这段循环改成select之后的数据循环

  1. {foreach $getFarmSensorFunctionList as $k=>$v}
  2. <option value='{$v.id}' {in name="$v.id" value="$row.id"}selected=""{/in} >{$v.title}({$v.unit})</option>
  3. {/foreach}

原文标题:下拉菜单option拼接

原文文档:ulthon_admin

原文地址:https://doc.ulthon.com/read/augushong/ulthon_admin/61a5e3fe49c4c/zh-cn/2.x.html

原文平台:奥宏文档

2.x