多个select2仅返回表单提交中的单个选择

时间:2019-02-06 14:23:29

标签: php jquery-select2

我正在其中一种表格中使用多个select2。提交表单后,在后端,仅会提取单个所选值,而会选择多个选项。

HTML

<form id="test" method="POST">
    <select name="dps_days_to[NL]" class="dokan-form-control dps_days_selection" required  multiple="multiple">
        <option></option>
        <option value="0">Sunday</option>
        <option value="1">Monday</option>
        <option value="2">Tuesday</option>
        <option value="3">Wednesday</option>
        <option value="4">Thurday</option>
    </select>
</form>

JS

jQuery(document).ready(function( $ ){
    jQuery('.dps_days_selection').select2({
    placeholder: "Please select a day"
    });
});

PHP

var_dump($_POST['dps_days_to']);

结果

Array
(
    [0] => 1
)

例如:如果从select2多个下拉列表的可用选项中选择了“星期日和星期一”,则仅返回“星期一”选项的值(即1)

请,有人可以帮我吗?

2 个答案:

答案 0 :(得分:1)

我很确定,

<select name="dps_days_to[NL][]" class="dokan-form-control dps_days_selection" required  multiple="multiple" class="days_selection">

在这里您多次提及 class属性
将其合并为一个,然后进行检查。

  

或者您可以尝试从1而不是0给出起始值

答案 1 :(得分:1)

@Himani

如果要按名称dps_days_to[NL]获取数据,则可以按以下进行更改。 将[NL]声明为Array [],即dps_days_to [NL] [],以便可以存储多个值。

如果[NL]每次都是固定的,则此方法有效。

<select name="dps_days_to[NL][]" class="dokan-form-control dps_days_selection" required  multiple="multiple">

结果

[dps_days_to] => Array
(
    [NL] => Array
    (
        [0] => 1
        [1] => 2
    )
)