HTML <select>多个$ _POST变量的一个名称

时间:2019-11-20 14:18:33

标签: html select names

我想做的是使用一个选择元素来获得两个具有相同值的$_POST变量。 例如:

<select name='a1'>
  <option value='1'>one</option>
  <option value='2'>two</option>
  <option value='3'>three</option>
</select>

将导致$_POST[a1] => 1

我想做的是这样的:

<select name='a1, a2'>
  <option value='1'>one</option>
  <option value='2'>two</option>
  <option value='3'>three</option>
</select>

所以:

$_POST[a1] => 1, $_POST[a2] => 1

$_POST[a1] => 2, $_POST[a2] => 2

无论表单用户选择什么。

2 个答案:

答案 0 :(得分:2)

您可以在表单中添加input type="hidden",然后根据选择字段的当前值使用它来存储变量。

// Add this hidden input to your form
<input type="hidden" name="a2" value=""></input>

// Use this script to change it's value based on selection from "a1"
$("select[name=a1]").change(
    function(){ 
        $("input[name=a2]").val($(this).val()); 
    }
);

答案 1 :(得分:2)

为避免显式脚本块(也避免了jquery依赖性),请使用以下速记:

<!--this should be hidden, set to text Just for preview-->
<input type="text" name="a2" value="1">

<select name="a1" onchange="document.getElementsByName('a2')[0].value=this.value">
<option value='1'>one</option>
<option value='2'>two</option>
<option value='3'>three</option>
</select>