由“bootstrap-select”中的“multiple”表单提交的值
Posted
技术标签:
【中文标题】由“bootstrap-select”中的“multiple”表单提交的值【英文标题】:Values submitted by a form with `multiple` in `bootstrap-select` 【发布时间】:2014-10-05 16:42:02 【问题描述】:如果生成带有bootstrap
和bootstrap-select
的表单:
<form action="handle.php" method="post">
<select name="pids" class="selectpicker" multiple>
<option value="1">A</option>
<option value="2">B</option>
<option value="6">C</option>
</select>
</form>
并且一个选择所有或多个项目,只有最后一个选择value
的项目被发布到handle.php
页面。
handle.php
<?php
var_dump($_POST);
?>
结果:
array(1) ["pids"]=> string(1) "6"
如何检索所有选定的项目?
【问题讨论】:
【参考方案1】:最有可能的情况是您需要将名称设置为 pids[](注意方括号)方括号定义一个数组而不是单个值。
<select name="pids[]" class="selectpicker" multiple>
【讨论】:
是的,就是这样。谢谢。我已提出拉取请求以更新bootstrap-select
的文档。【参考方案2】:
<select name="pids[]" class="selectpicker" multiple>
我不确定,但类似:)
【讨论】:
【参考方案3】:只是一个简短的说明......即使这个是两年后被接受的......
为此,您必须 POST 到一个文件(这使得它重新加载)。我试了 5 个小时才弄明白。
但是,如果你想使用 Ajax...那么你可以通过
发送所有值var values_from_list=$('#id_of_the_field').val();
它会将所有内容发送到小 ajax 数组, 在 PHP 中,您可以对其进行 json_encode 编码并将其保存到您的数据库中。
希望它能节省一些人的时间。
【讨论】:
您可以通过AJAX发送表单,通过序列化它,您不必指定表单中的每个输入。以上是关于由“bootstrap-select”中的“multiple”表单提交的值的主要内容,如果未能解决你的问题,请参考以下文章
bootstrap-select 从关闭状态重新打开时的空选项
python测试开发django-168.jquery的clone()后 bootstrap-select 中 selectpicker 下拉框选择无效问题解决
带 masm 的寄存器 edx::eax 中的 mul 和内存分配
带 masm 的寄存器 edx::eax 中的 mul 和内存分配