Select2 - 多个标签不起作用

noo*_*r69 5 javascript php jquery laravel jquery-select2

我正在尝试使用Select2(https://select2.github.io)来允许用户在提交表单之前在字段中键入多个标签.在我的Laravel PHP应用程序中,我将获取这些标记,确定它们是否存在并将它们添加到数据库中.

我的问题是我似乎无法让Select2认识到用户输入了多个标签.当我查询表单数据时,我只看到用户输入的LAST标记而不是所有标记.

我的Select2元素是:

<select class="tags-field" name="tags" data-tags="true" data-placeholder="TAGS" multiple="multiple">
</select>
Run Code Online (Sandbox Code Playgroud)

我的JQuery是:

$(function() {
    $(".tags-field").select2({
        maximumSelectionLength: 3,
        tokenSeparators: [','],
    });
}
Run Code Online (Sandbox Code Playgroud)

没有Javascript错误,它工作得非常好,除了我无法检测到所有标签.

Pau*_*dal 8

要使PHP将所有选定的选项作为数组提供,请使用一对方括号为您的选择名称添加后缀,如下所示:

<select class="tags-field" name="tags[]" data-tags="true" data-placeholder="TAGS" multiple="multiple">
Run Code Online (Sandbox Code Playgroud)

如果将此表单发送到PHP程序,$ _POST ['tags']的值将是一个数组.请注意,表单控件名称中的方括号不是数组键的一部分.你会处理这样一个表格:

<?php
$tags = $_POST['tags'];
// Note that $tags will be an array.
foreach ($tags as $t) {
    echo "$t<br />";
}
?>
Run Code Online (Sandbox Code Playgroud)

参考文献:http://bbrown.kennesaw.edu/papers/php2.html