始终知道是否已选中复选框

时间:2013-03-30 08:11:37

标签: html html5

我的网页看起来像这样

<form id="1" ... action="<?php $arr = explode ('/',$_SERVER['REQUEST_URI']); echo $arr[count($arr) - 1]; ?>#partone">       
  <div id = "partone">Hello</div>
</form>

<form id="2" ... action="<?php $arr = explode ('/',$_SERVER['REQUEST_URI']); echo $arr[count($arr) - 1]; ?>#parttwo">       
<?php
if(//what?)
  echo '<input type="checkbox" name="aktualisieren" value="yes" id="aktualisieren" checked>refresh';
else
  echo '<input type="checkbox" name="aktualisieren" id="aktualisieren" value="no">refresh';
?> 
<div id = "parttwo">Hello, two</div>
</form>

我的目标是

  • 始终知道在提交页面之前是否选中了复选框 aktualisieren
  • 转移州
  • 将状态保存到变量$ checked

因此,如果选中 aktualisieren ,则应立即检查,并且某些变量$ checked应为true,反之亦然,以便取消选中。

表单1 提交时出现问题,而表单2 包含复选框,因此复选框中$ _POST中没有字段。

编辑:使用不同表单的原因是我想使用不同的锚点提交它以根据提交的位置跳转到适当的位置。如果可以采用不同的方式,我只能使用一种形式。

2 个答案:

答案 0 :(得分:1)

使用单一表单。这就是如何做到的答案。

否则你必须使用一个小的 hack 来做到这一点: 在form1中创建相同的checkbox-element,但隐藏它。每当更改form1中复选框的状态时,您必须更改隐藏复选框的状态。

答案 1 :(得分:0)

每页只能使用一个表单。否则,当您提交一个表单时,其他表单中的所有数据都将丢失。我通常在身体标签的最开始处开始表格。