我有一个选择多个列表,其中有几个项目。它是一个ACL的IP地址列表。人们可以添加/删除IP,然后保存列表。但是,除非您选择列表中的项目,否则$_POST[selectName]
不包含任何值。我怎样才能做到这一点?我知道我可以用JavaScript做到这一点,但我宁愿坚持PHP。如何在选择列表中发布所有选项?
回答
编辑/更正:您需要JS。没有办法通过POST发送所有(选择和未选择)选项。您必须在提交之前以编程方式选择所有选项。接收POST(file2.php)
<script type="text/javascript">
function selectAll()
{
selectBox = document.getElementById("someId");
for (var i = 0; i < selectBox.options.length; i++)
{
selectBox.options[i].selected = true;
}
}
</script>
<form method="post" action="file2.php">
<select id="someId" name="selectName[]" multiple>
<option value="123.123.123.123">123.123.123.123</option>
<option value="234.234.234.234">234.234.234.234</option>
</select>
<input type="submit" name="submit" value=Submit onclick="selectAll();">
</form>
文件:
文件与表格(file1.php)
<?php
foreach ($_POST['selectName'] as $item)
{
print "$item<br/>";
}
?>
他希望所有可能的值都来自'multiple',而不仅仅是选定的值。 – 2013-03-03 20:37:14
@Pekka웃aaah所以也许他应该将所有这些选项设置为选中状态? yup; – Kamil 2013-03-03 20:39:23
yup;他会需要JavaScript的 – 2013-03-03 20:40:00
只是为了钉在这你也可以使用的jQuery的版本@卡米尔的代码比循环更简单:
<script type="text/javascript">
jQuery('[name="form1"]').on("submit",selectAll);
function selectAll()
{
jQuery('[name="selectName[]"] option').prop('selected', true);
}
</script>
<form name="form1" method="post" action="file2.php">
<select id="someId" name="selectName[]" multiple>
<option value="123.123.123.123">123.123.123.123</option>
<option value="234.234.234.234">234.234.234.234</option>
</select>
<input type="submit" name="submit" value=Submit onclick="selectAll();">
</form>
- 1. 在jQuery中发布多选列表中的所有选择项Ajax
- 2. 如何选择所有项目在选择所有菜单项时选择黑莓的列表框复选框
- 3. 列表框中选择所有项目
- 4. 如何选择选择列表选项
- 5. Knockout.js布尔选择列表选项
- 6. 我如何发布从选择列表中的选择选项,我也勾选了与HTML/PHP的复选框?
- 7. 从Prolog中的列表中选择所有可能的选项
- 8. 在“ng-options”选择列表中编辑所选选项文本
- 9. 在Jenkins Groovy中选择所有选项
- 10. JQuery如何选择当前列表项中的所有锚点?
- 11. 如何选择/取消选择使用jQuery的选择列表中的所有选项?
- 12. 为复选框选择列表视图的所有选项
- 13. 选择所有选项
- 14. 一个选择不发布所选选项
- 15. 默认情况下选择选择列表框中的所有选项 - javascript
- 16. 如何在asp.net mvc中选择一个选择列表项目?
- 17. 从列中选择所有项目
- 18. 如何从所有表中选择所有可能的列值?
- 19. 如何检索Jquery中所有表单选择的所有选项?
- 20. 选择所有行并在列表视图中取消选择所有行选项
- 21. 当HTML选择列表项中选择
- 22. 如何选择在recyclerview中列出的所有项目?
- 23. 如何取消选择多选部件中的所有选项
- 24. 如何在选择框中获取所有选项值(选定/未选中)
- 25. 自动选择选项,如果只有一个在选择列表中 - jQuery
- 26. 如何从引导选择选项中获取发布数据?
- 27. 如何根据先前选择列表的选定选项更改选择列表中的选项?
- 28. CheckBoxList选择jQuery中的所有选项
- 29. 如何在Photoshop中发布选择?
- 30. 如何在jQuery中选择多个选择列表中的选项?
浏览器不会将这些值发送到PHP,您将需要使用Javascript来操作th提交过程。因此,没有PHP的唯一方法来做到这一点 – 2013-03-03 20:30:17
你见过这个? http://stackoverflow.com/questions/2407284/how-to-get-multiple-selected-values-of-select-box-in-php – Kamil 2013-03-03 20:31:56
传统的做法是使用选择多选,然后在表单提交有JavaScript选择所有选项。 – Jodes 2013-03-03 20:38:09