2012-07-26 23 views
0

我的问题是关于单选按钮。我有10个具有相同名称和顺序值的单选按钮。其中一个单选按钮被选中。示例代码如下所述:

是否有可能重复具有不同检查值的相同单选按钮?

<li><input type="radio" value="1000" checked="checked" name="status" />Yet to contact</li> 
<li><input type="radio" value="1001" name="status"/>To call back, follow up</li> 
<li><input type="radio" value="1002" name="status"/>Interested, to meet</li> 
<li><input type="radio" value="1003" name="status"/>Meeting over, to follow up</li> 
<li><input type="radio" value="1004" name="status"/>Meeting over, not interested</li> 
<li><input type="radio" value="1005" name="status"/>Not interested now</li> 
<li><input type="radio" value="1006" name="status"/>Wrong contact details</li> 
<li><input type="radio" value="1007" name="status"/>Services taken</li> 

上面的代码将通过PHP动态编码,并且将重复单页上许多倍。但是,我尝试了纯HTML代码,发现它创建了一个问题,并没有显示任何单选按钮。如果我用不同的名称对其进行分组,如name =“status [1]”和name =“status [2]”,则只有每组单选按钮显示一个选中的单选按钮。

有没有人有一个解决方案,我可以为所有单选按钮保持相同的名称,每个单选按钮(同名)都会显示一个默认单选按钮?

+0

你尝试把他们在字段集? – 2012-07-26 11:02:46

+0

嗯,我已经在W3Schools中检查过你的代码,因为我看不到任何错误,它工作正常。所以不知道你的问题是什么。 – RedEyedMonster 2012-07-26 11:06:33

+0

嗨RedEyeMonster,感谢您的回复。请在同一页面重复相同的代码两到三次。你会发现一个问题。 – Jeet 2012-07-26 11:17:27

回答

0

如果我理解正确你的问题:

在单选按钮的name属性指定的数组。

<input type="radio" name="check[]" value="1" /> 
<input type="radio" name="check[]" value="2" /> 
<input type="radio" name="check[]" value="3" /> 

当您使用$_POST['check']你会得到包含指数和检查单选按钮值的数组。

假设,如果你选中第一和第三单选按钮,该阵列是这样的:

array('0'=>'1', '2'=>'3')

+0

嗨Asprin你有点不对。但是,我要重复使用与数组和值相同的单选按钮,但重复默认单选按钮的选中值将会不同。我希望你能理解我想要给你解释的.. – Jeet 2012-07-26 11:12:17

+0

这是不正确的。首先,指定数组数据的'foo []'格式是PHP特性而不是HTTP标准。在所有其他语言中,你所做的只是简单地给所有的输入命名(例如'?foo = val1&foo = val2&foo = val3')。其次,单选按钮返回单个标量值,而不是数组。因此,即使对于PHP后端,您也不需要在变量名后加'[]'。 – 2012-07-26 13:28:18

0

每个组单选按钮的名称具有TE是唯一的。

尝试这样:

for ($i=1; $i<=5; $i++) { 
    echo '<li><input type="radio" value="1000" checked="checked" name="status'.$i.'" />Yet to contact</li> 
     <li><input type="radio" value="1001" name="status'.$i.'"/>To call back, follow up</li> 

     <li><input type="radio" value="1002" name="status'.$i.'"/>Interested, to meet</li> 

     <li><input type="radio" value="1003" name="status'.$i.'"/>Meeting over, to follow up</li> 

     <li><input type="radio" value="1004" name="status'.$i.'"/>Meeting over, not interested</li> 

     <li><input type="radio" value="1005" name="status'.$i.'"/>Not interested now</li> 

     <li><input type="radio" value="1006" name="status'.$i.'"/>Wrong contact details</li> 

     <li><input type="radio" value="1007" name="status'.$i.'"/>Services taken</li>'; 
} 

读取所选值使用:

for ($i=1; $i<=5; $i++) { 
    echo $_POST["status$i"] . '<br>; 
} 
+0

嗨布拉姆,你的解决方案是好的,我曾经以同样的方式考虑过。但是,如何捕获表单提交上单选按钮的值,因为每个单选按钮组的名称都不相同。你有没有想过这个问题?任何解决方案。 – Jeet 2012-07-26 11:23:05

+0

我编辑了我的答案以获取选定的值。 – Fluitketel 2012-07-26 11:27:02

+0

感谢您的及时回复。您每次调用同一个数组,数组将与“状态”文本一起统计相同的数字作为名称的一部分。我希望我是正确的,并猜测正确。所以如果我重复这个代码5次,那么每次我都会得到名为“status1”的第一个单选按钮等等。所以这意味着重复的单选按钮每次都会有相同的名称。如果我错了,请纠正我。谢谢 – Jeet 2012-07-26 11:33:42

相关问题