选择Laravel表单编辑

时间:2015-12-21 14:34:00

标签: jquery forms laravel selectize.js

我遵循本教程here在我的项目中使用选择性和rtconnor标记,并且在创建新故障单时效果很好,但是当我尝试编辑故障单时,我无法正常工作。

在我的TicketController编辑()

$tags = Ticket::with('tagged')->first();

我获得了标记到此故障单的所有标记。

在我看来,我有这个文本字段:

<input type="text" name="tags" class="form-control" id="tags" value='@foreach ($ticket->tags as $tag) {{$tag->name}} @endforeach'>

这是我的剧本:

<script>
    $( document ).ready(function() {
        $('#tags').selectize({
            plugins: ['remove_button'],
            delimiter: ',',
            persist: false,
            valueField: 'tag',
            labelField: 'tag',
            searchField: 'tag',
            options: tags,
            create: function(input) {
                return {
                    tag: input
                }
            }
        });
    });
</script>

<script>
    var tags = [
            @foreach ($tags as $tag)
            {tag: "{{$tag}}" },
        @endforeach
    ];
</script>

Textfield为空,但当我删除id =&#34;标签&#34;我可以看到我的标签,但只能作为纯文本字段,而不是选择。

我认为问题是我的脚本。你能救我吗?

非常感谢!

1 个答案:

答案 0 :(得分:1)

我并不熟悉selectize插件,但看起来value属性需要以逗号分隔。尝试在你的标签上调用implode函数,就像这样..

<input type="text" name="tags" class="form-control" id="tags" value="{{ implode(',', $ticket->tags) }}" />

不确定这是否有用...试试看。

编辑:oup!还注意到你的tags变量...... foreach循环将导致一个尾随的逗号,这可能会导致问题。我会删除它。