验证动态单选按钮组

时间:2014-02-03 04:43:01

标签: php validation

我正在尝试验证php中单选按钮组的值。
单选按钮是在表单中动态创建的。
例如,如果它只是一个无线电组,我可以验证单选按钮。

<form>
<input type="radio" name="radio1">
<input type="radio" name="radio1">
</form>

这是用于传递单选按钮的值

if(isset($_POST['radio1']))
{
    *some codes
}

由于我的表单中的单选按钮是动态创建的,因此无线电组的名称会像radio1,radio2,radio3等一样增加。
如何为此动态单选按钮组进行验证?

3 个答案:

答案 0 :(得分:2)

更好地创建名称为数组的单选按钮。像

<form method="post">
<input type="radio" name="radio[1]">
<input type="radio" name="radio[2]">
</form>

和服务器端,您可以使用foreach检查

foreach($_POST['radio'] as $key=>$radio){
   if($radio == "on"){
      echo "$key is checked";
   }
}

答案 1 :(得分:1)

试试这个

<form>
<input type="radio" class="rdo" name="radio[]">
<input type="radio" class="rdo" name="radio[]">
            .....
<input type="radio" class="rdo" name="radio[]">//n value
</form>

var arr = new Array();
    $('.rdo:checked').each(function() {
        arr.push($(this).val());
    });

在服务器端

$i=0;

  if(count($_POST['radio'])==0){
  return false;
  }
    foreach($_POST['radio'] AS $rs){
      if($rs!=''){
            //Some code
      }
      else{
         $i++;
      } 
    }
    if($i==count($_POST['radio'])){
      return false;
    }else{
      //some code
    }

答案 2 :(得分:0)

您可以尝试将无线电元素用作如下所示的数组:

 <form method="post">
    <input type="radio" name="radio[0]" value="0.1">
    <input type="radio" name="radio[0]" value="0.2">
    <input type="radio" name="radio[1]" value="1.1">
    <input type="radio" name="radio[1]" value="1.2">
    <input type="submit" name="s" value="Submit" />
</form>

从服务器尝试

  if(isset($_POST['radio'])){
    echo "<pr>";
    print_r($_POST);    
  }