我有一個選擇多個列表,其中有幾個項目。它是一個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. CodeIgniter發佈所有選擇項目
- 5. 列表框中選擇所有項目
- 6. 選擇所有列表中的項目
- 7. 如何選擇選擇列表選項
- 8. 發送所有選項從選擇列表到另一個JSP
- 9. 如何設置所有選項/選擇下拉列表
- 10. 選擇/取消選擇列表視圖中的所有項目
- 11. Knockout.js布爾選擇列表選項
- 12. 如何從選擇列表中沒有[]所選選項的文本括號
- 13. 我如何發佈從選擇列表中的選擇選項,我也勾選了與HTML/PHP的複選框?
- 14. 列表框未選擇所選項目
- 15. 如何將所有選項從複選框列表/收音機列表/選擇選項列表發送到服務器以及所選的一個由php?
- 16. 從Prolog中的列表中選擇所有可能的選項
- 17. 在「ng-options」選擇列表中編輯所選選項文本
- 18. 在Jenkins Groovy中選擇所有選項
- 19. 如何在perl中選擇列表項
- 20. JQuery如何選擇當前列表項中的所有錨點?
- 21. 如何選擇/取消選擇使用jQuery的選擇列表中的所有選項?
- 22. 爲複選框選擇列表視圖的所有選項
- 23. 從HTML選擇列表中抓取所有選項
- 24. 選擇所有選項
- 25. 如何從它所在的所有表中選擇一列?
- 26. 一個選擇不發佈所選選項
- 27. 默認情況下選擇選擇列表框中的所有選項 - javascript
- 28. 如何在asp.net mvc中選擇一個選擇列表項目?
- 29. 從列中選擇所有項目
- 30. 如何選擇表格列中的所有複選框-Vaadin 7
瀏覽器不會將這些值發送到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