laravel-admin select框默認選中的方法

 更新時間:2019年10月03日 19:39:11   作者:謝高升   我要評論
今天小編就為大家分享一篇laravel-admin select框默認選中的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

laravel-admin后臺框架的select選擇框的默認選中,結合select2的js插件;

文檔http://laravel-admin.org/docs/#/zh/model-form-fields?id=select%E9%80%89%E6%8B%A9%E6%A1%86

文檔里面沒有看到這個默認選中的屬性,也可能是我沒有找到;查閱了select2的文檔看到了selected屬性,通過曲線的方式實現了這個功能;

protected function form()
{
  return Admin::form(Member::class, function (Form $form) {

    // $form->display('id', 'ID');
    $form->text('mac', '終端mac');
    $form->text('phone', '手機號');
    $form->text('password', '密碼');
    //判斷是不是edit
    $id = Request::route('member');
    $place_id ='';
    $rule_id = '';
    if ($id)
    {
      $model = $form->model()->find($id);
      $place_id = $model->place_id;
      $rule_id = $model->rule_id;
    }
    $form->select('place_id','所屬場所')->options("/api/getPlace/$place_id");
    $form->select('rule_id', '規則')->options("/api/getRule/$rule_id");
  });
}

//api的實現
public function getPlace(Request $request)
{
  $name = $request->get('p');
  $id = $request->id;
  $where = [];
  if ($name)
  {
    $where = ['name','like',"%$name%"];
  }
  $places = Place::where($where)->get();
  $result = [];
  foreach ($places as $key=>$value)
  {
    $result[$key]['id'] = $value->Id;
    $result[$key]['text'] = $value->name;
    if ($value->Id == $id)
    {
      $result[$key]['selected'] = true;
    }
  }
    if (!$id)
    {
      array_unshift($result,['id'=>' ','text'=>'請選擇場所','selected'=>true]);
    }else{
      array_unshift($result,['id'=>' ','text'=>'請選擇場所']);
    }
  return response()->json($result);
}

注意;

返回的時候一定要有response()->json()來返回;否則的話會返回的類型是 text/html類型

以上這篇laravel-admin select框默認選中的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

最新評論

润升娱乐