fastadmin 键值组件视频上传

下面是html代码`。

    <div class="form-group">
        <label class="control-label col-xs-12 col-sm-2">{:__('Videojson')}:</label>
        <div class="col-xs-12 col-sm-8">
            
            <table class="table table-responsive fieldlist" data-name="row[videojson]" data-template="videojsontpl" data-tag="tr">
                <tr>
                    <td>是否在案例视频中显示</td>
                    <td>性别</td>
                   
                    <td></td>
                </tr>
                <tr>
                    <td colspan="5"><a href="javascript:;" class="btn btn-sm btn-success btn-append"><i class="fa fa-plus"></i> 追加</a></td>
                </tr>
                 <textarea name="row[videojson]" class="form-control hide" cols="30" rows="5">{$row.videojson}</textarea>
            </table>
            <!--定义模板,模板语法使用Art-Template模板语法-->
            <script type="text/html" id="videojsontpl">
                <tr class="form-inline">
                    <td>
                        <input type="radio" name="row[<%=name%>][<%=index%>][is_show]"  value="1" <%= row['is_show'] == 1 ? 'checked' : '' %> size="10">是
                        <input type="radio" name="row[<%=name%>][<%=index%>][is_show]"value="0" <%= row['is_show'] == 0 ? 'checked' : '' %> size="10">否
                    </td> 
                    <td>
                        <div class="input-group">
                            <input id="c-video-<%=index%>" data-rule="" class="form-control" size="50" name="row[<%=name%>][<%=index%>][video]" type="text" value="<%=row['video']%>">
                            <div class="input-group-addon no-border no-padding">
                                <span><button type="button" id="faupload-video-<%=index%>" class="btn btn-danger " data-input-id="c-video-<%=index%>"  data-multiple="false" data-preview-id="p-video-<%=index%>"><i class="fa fa-upload"></i> 上传</button></span>
                                <span><button type="button" id="fachoose-video-<%=index%>" class="btn btn-primary fachoose" data-input-id="c-video-<%=index%>" data-mimetype="image/*" data-multiple="false"><i class="fa fa-list"></i> 选择</button></span>
                            </div>
                            <span class="msg-box n-right" for="c-video-<%=index%>"></span>
                        </div>
                        <ul class="row list-inline faupload-preview" id="p-video-<%=index%>"></ul>
                    </td>
                     <td>
                        <span class="btn btn-sm btn-danger btn-remove">
                        <i class="fa fa-times"></i></span> <span class="btn btn-sm btn-primary btn-dragsort"><i class="fa fa-arrows"></i></span>
                    </td>
                </tr>
            </script>
        </div>
    </div>

下面是js文件中的代码`。

  add: function () {
            Controller.api.bindevent();
            $(document).on("click",".btn-append",function(){
                Form.events.faupload("#add-form");
            })
        },
  edit: function () {
            Controller.api.bindevent();
            $(document).on("click",".btn-append",function(){
                Form.events.faupload("#edit-form");
            })
            $(document).on("click",".faupload",function(){
                Form.events.faupload("#edit-form");
            })
        },
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
FastAdmin中,可以使用表单组件中的嵌套表单来实现键值组件内嵌键值组件的功能。具体步骤如下: 1. 在需要使用键值组件的表单中,使用`form->hasMany`方法定义一个嵌套表单字段。例如: ```php $form->hasMany('items', 'Items', function (Form\NestedForm $form) { $form->text('name', '名称'); $form->hasMany('properties', '属性', function (Form\NestedForm $form) { $form->text('key', '键'); $form->text('value', '值'); }); }); ``` 上述代码中,我们定义了一个名为`items`的嵌套表单,该表单中包含一个`name`字段和一个名为`properties`的嵌套表单。 2. 在定义嵌套表单时,要使用`form->hasMany`方法来定义嵌套表单字段。例如,在上面的代码中,我们定义了一个名为`properties`的嵌套表单。 3. 在嵌套表单中,可以继续使用`form->hasMany`方法来定义更深层次的嵌套表单。例如,在上面的代码中,我们定义了一个名为`properties`的嵌套表单,该表单中包含一个`key`字段和一个`value`字段。 4. 在保存表单数据时,嵌套表单中的数据会以 JSON 格式保存到数据库中。因此,在显示数据时,需要使用`json_decode`函数将 JSON 数据转换为 PHP 数组,然后在模板中循环显示。 例如,在表单的编辑页面中,可以使用以下代码来显示嵌套表单中的数据: ```php @foreach (json_decode($model->items, true) as $item) {{ $item['name'] }} <ul> @foreach ($item['properties'] as $property) <li>{{ $property['key'] }}: {{ $property['value'] }}</li> @endforeach </ul> @endforeach ``` 上述代码中,我们先使用`json_decode`函数将`items`字段的 JSON 数据转换为 PHP 数组,然后在模板中循环显示键值组件内嵌键值组件的数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值