<form method="post" action="">
<input type="checkbox" name="boxes[]" value="alpha">alpha</input>
<input type="checkbox" name="boxes[]" value="beta">beta</input>
<input type="checkbox" name="boxes[]" value="omega">omega</input>
<input type="submit" name ="submit" value="submit">
</form>
在这种形式中,我如何通过选择获得数组值?
例如,如果我选择beta>omega>alpha
,则数组将为['beta', 'omega', 'alpha']
而不是['alpha', 'beta', 'omega']
然后在PHP中调用它
if(isset($_GET['submit'])){
$boxes = $_GET['boxes'];
//HERE IS MY 2ND PROBLEM
}
我在//HERE IS MY 2ND PROBLEM
尝试做的是将每个名称顺序作为数组回显,例如
['beta', 'omega', 'alpha']
就像
echo 'b'; echo 'o'; echo 'a';
按照数组中的顺序排列。
那我该怎么做呢?
答案 0 :(得分:2)
由于所有表格信息都是在提交时立即发送的,因此无法在不使用JavaScript的情况下获取所选择的订单。
如果需要,可以使用JS记录复选框选择,将密钥存储到单独的数组或列表中,然后使用隐藏字段传递该数组。
<form method="post" action="">
<input type="checkbox" name="boxes[]" value="alpha">alpha</input>
<input type="checkbox" name="boxes[]" value="beta">beta</input>
<input type="checkbox" name="boxes[]" value="omega">omega</input>
<!-- Update this field dynamically with JavaScript. -->
<input type="hidden" name="checkboxOrder" value="" />
<input type="submit" name ="submit" value="submit">
</form>
如果用户在检查后取消选中框,则可能会变得很粘,但无论如何,这可能是我可能解决问题的方式。