2017-07-14 117 views
0

我有一个for循环,显示单选按钮,我想第一个显示为选中。但是,当我把一个if语句放在for循环中时,页面neine加载。有任何想法吗?For循环显示单选按钮与第一个选中

$mains = array(0=>'Beef Steak', 1=>'Chicken Breast', 2=>'Pork Chops'); 
$mainscount = count($mains); 

<?php for ($mainNO = 0; $mainNO < $mainscount; $mainNO++) { ?> 
    <label for="mains<?php echo $mainNO ?>" class="radiobutton"><?php echo $mains[$mainNO]; ?></label> 
    <input type="radio" name="mains" id="mains<?php echo $mainNO; ?>" value="<?php echo $mainNO; ?>" 
    <?php if($mainNO = 0){ echo 'checked="checked"'; } ?>/> 
<?php } ?> 

回答

1
<?php for ($mainNO = 0; $mainNO < $mainscount; $mainNO++) { ?> 
    <label for="mains<?php echo $mainNO ?>" class="radiobutton"><?php echo $mains[$mainNO]; ?></label> 
    <input type="radio" name="mains" id="mains<?php echo $mainNO; ?>" value="<?php echo $mainNO; ?>" 
     <?php if ($mainNO == 0) { 
      echo ' checked="checked" '; 
     } ?>/> 
<?php } ?> 

您使用=,你应该使用==

0

u的使用assingment运营商在比较声明

<?php for ($mainNO = 0; $mainNO < $mainscount; $mainNO++) { ?> 
<label for="mains<?php echo $mainNO ?>" class="radiobutton"><?php echo $mains[$mainNO]; ?></label> 
<input type="radio" name="mains" id="mains<?php echo $mainNO; ?>" value="<?php echo $mainNO; ?>" 
    <?php if ($mainNO == 0) { 
     echo " checked"; 
    } ?>/> 

,并在HTML5中,你可以使用检查

<input type="checkbox" checked> 
0

//注意:您使用single = in if条件是错误的,它会创建无限循环。测试过的代码。

$mains = array(0=>'Beef Steak', 1=>'Chicken Breast', 2=>'Pork Chops'); 
    $mainscount = count($mains); 

    for ($mainNO = 0; $mainNO < $mainscount; $mainNO++) { 

     // Checked if value is 0 
     if($mainNO == 0){ $checked = 'checked="checked"'; }else { $checked =''; }; 

     echo "<label for='mains".$mainNO."' class='radiobutton'>".$mains[$mainNO]."</label>"; 
     echo "<input type='radio' name='mains' id='mains".$mainNO."' value='".$mainNO."' $checked />"; 


    } 
相关问题