|
@@ -1,15 +1,15 @@
|
|
|
<div class="{{$viewClass['form-group']}}">
|
|
|
|
|
|
- <label for="{{$id}}" class="{{$viewClass['label']}} control-label">{!! $label !!}</label>
|
|
|
+ <label class="{{$viewClass['label']}} control-label">{!! $label !!}</label>
|
|
|
|
|
|
- <div class="{{$viewClass['field']}}">
|
|
|
+ <div id="{{ $id }}" class="{{$viewClass['field']}}">
|
|
|
|
|
|
@include('admin::form.error')
|
|
|
|
|
|
<div class="input-group" style="width:100%">
|
|
|
- <input {{$disabled}} {!! $attributes !!} name="{{$name}}" />
|
|
|
+ <input {{$disabled}} {!! $attributes !!} class="hidden-input" name="{{$name}}" />
|
|
|
|
|
|
- <div class="jstree-wrapper {{$class}}-tree-wrapper">
|
|
|
+ <div class="jstree-wrapper">
|
|
|
<div class="d-flex">
|
|
|
{!! $checkboxes !!}
|
|
|
</div>
|
|
@@ -23,25 +23,28 @@
|
|
|
</div>
|
|
|
|
|
|
<script require="@jstree">
|
|
|
- var $tree = $('.{{ $class }}-tree-wrapper').find('.da-tree'),
|
|
|
- $input = $('input[name="{{$name}}"].{{ $class }}'),
|
|
|
+ var selector = replaceNestedFormIndex('#{{ $id }}'),
|
|
|
+ tree = selector+' .jstree-wrapper .da-tree',
|
|
|
+ $tree = $(tree),
|
|
|
+ $input = $(selector+' .hidden-input'),
|
|
|
opts = {!! $options !!},
|
|
|
parents = {!! $parents !!};
|
|
|
|
|
|
opts.core = opts.core || {};
|
|
|
opts.core.data = {!! $nodes !!};
|
|
|
|
|
|
- $(document).on("click", ".{{$class}}-tree-wrapper input[value=1]", function () {
|
|
|
- $tree.jstree($(this).prop("checked") ? "check_all" : "uncheck_all");
|
|
|
+ $(document).on("click", selector+" input[value=1]", function () {
|
|
|
+ $(this).parents('.jstree-wrapper').find('.da-tree').jstree($(this).prop("checked") ? "check_all" : "uncheck_all");
|
|
|
});
|
|
|
- $(document).on("click", ".{{$class}}-tree-wrapper input[value=2]", function () {
|
|
|
- $tree.jstree($(this).prop("checked") ? "open_all" : "close_all");
|
|
|
+ $(document).on("click", selector+" input[value=2]", function () {
|
|
|
+ $(this).parents('.jstree-wrapper').find('.da-tree').jstree($(this).prop("checked") ? "open_all" : "close_all");
|
|
|
});
|
|
|
|
|
|
$tree.on("changed.jstree", function (e, data) {
|
|
|
+ var i, selected = [];
|
|
|
+
|
|
|
$input.val('');
|
|
|
|
|
|
- var i, selected = [];
|
|
|
for (i in data.selected) {
|
|
|
if (Dcat.helpers.inObject(parents, data.selected[i])) { // 过滤父节点
|
|
|
continue;
|
|
@@ -51,6 +54,6 @@
|
|
|
|
|
|
selected.length && $input.val(selected.join(','));
|
|
|
}).on("loaded.jstree", function () {
|
|
|
- @if($expand) $tree.jstree('open_all'); @endif
|
|
|
+ @if($expand) $(this).jstree('open_all'); @endif
|
|
|
}).jstree(opts);
|
|
|
</script>
|