1. 程式人生 > >fastadmin中自定義按鈕

fastadmin中自定義按鈕

fastadmin是基於thinkphp的後臺開發框架,由於是第一次用,很多東西都是盲人摸象啊,官方文件又少,所以記錄一下一些自己摸索了一些時間的操作

需求:用過的都知道,左邊的新增,編輯等按鈕是框架自動給我們生成好的,然後現在我想在這裡增加一個“設備註冊”的按鈕,該怎麼實現呢


由於這個按鈕是我們自己新增的,所以我們要給它寫一個事件

           //設備註冊
           $(document).on("click",".btn-register",function(){
                Layer.open({
                    content: Template("register", {}),
                    yes:function (index,layero) {
                     Fast.api.ajax({
                        url: 'devicemanager/device_detail_manager/register',
                        dataType: 'jsonp',
                        data: {udid: $("#udid", layero).val(), _method: 'GET'}
                        }, function (data, ret) {
                                Layer.closeAll();
                                Layer.alert(ret.msg);
                        });
                    }
                });
           });

這裡的content就是點選之後會彈出一個視窗,Template是模板名字,這個等一會要在view層中寫的,這裡面的url就是controller層的定義的方法,還需要在這個js檔案最開始定義一下template這個變數

定義一個template,這裡的Config裡面是view層的資料夾名

define(['jquery', 'bootstrap', 'backend', 'table', 'form','template'], function ($, undefined, Backend, Table, Form,Template) {
            Template.helper("Moment", Moment);
            Template.helper("addons", Config['device_detail_manager']);
            var table = $("#table");

然後我們進去到view層,新增一個id和上面的content對應的script,這樣你點選按鈕就會彈出你寫這個視窗
<script id="register" type="text/html">
    <div>
        <form class="form-horizontal">
            <fieldset>
                <div class="form-group">
                    <label for="inputAccount" class="col-lg-3 control-label">{:__('udid')}</label>
                    <div class="col-lg-9">
                        <input type="text" class="form-control" id="udid" value="" placeholder="{:__('Your Register Udid')}">
                    </div>
                </div>
            </fieldset>
        </form>
    </div>
</script>

最後呢去到model層,新增register這個方法,這樣就大功告成了
    public function register($ids=NULL) {
        $request = $this->request()->get();
        if ($request) {
            $udid = $request['udid'];
            if ($this->model->registerUdid($udid)) {
                $this->success();
            }  else {
                $this->error();
            }
        }
    }