为啥在提交表单后,来自选择控件的选中元素的值没有出现在 $_POST 数组中? [复制]
Posted
技术标签:
【中文标题】为啥在提交表单后,来自选择控件的选中元素的值没有出现在 $_POST 数组中? [复制]【英文标题】:Why the values of checked elements from select control are not coming in $_POST array after submission of form? [duplicate]为什么在提交表单后,来自选择控件的选中元素的值没有出现在 $_POST 数组中? [复制] 【发布时间】:2014-06-11 05:47:24 【问题描述】:我有以下 html 代码:
<form action="rebates.php" role="form" method="post">
<select id="example28" multiple="multiple" name="applicable_states">
<option value="" selected='selected'>Select Unit</option>
<option value="1" >Alabama</option>
<option value="2" >Alaska</option>
<option value="3" >Arizona</option>
<option value="4" >Arkansas</option>
<option value="5" >California</option>
</select>
<button type="submit" class="btn btn-primary">Preview</button>
</form>
选择控件的JQuery代码如下:
/*jQuery Code*/
$(document).ready(function()
window.prettyPrint() && prettyPrint();
$('#example28').multiselect(
includeSelectAllOption: true,
maxHeight: 150
);
);
我使用了 Bootstrap 的 js 和 css(多选和美化) 来实现这一点。我的问题是在$_POST array
oe rebates.php 提交表单后,我没有得到检查元素的值。有人可以在这方面帮助我吗?提前致谢。当我从选择控件中检查一些值并提交表单时,我得到了$_POST
数组,如下所示:
Array
(
[applicable_states] => 11
[multiselect] => 11
)
为什么会这样? rebates.php中的代码如下:
<?php
print_r($_POST); die;
?>
【问题讨论】:
【参考方案1】:PHP 需要知道它是一个数组。所以你需要更改选择的名称。
name="applicable_states[]"
【讨论】:
我尝试了你的想法。将选择控件的名称更改为适用的状态[],但不幸的是它不起作用。 有什么变化吗?你的$_POST
现在是什么样子的?
@它根本没有改变。看起来都一样。
你还有什么想法吗?以上是关于为啥在提交表单后,来自选择控件的选中元素的值没有出现在 $_POST 数组中? [复制]的主要内容,如果未能解决你的问题,请参考以下文章