提交后填充单选按钮值


populate radio button value after submit

我尝试实现以下代码:

    <?php
    $yesno1="";
    $yesno2="";
    $option1="";
    $option2="";
    $option3="";
   if(isset($_POST['submit'])){
      $yesno1=$_POST['yesno1'];
      $yesno2=$_POST['yesno2'];
      $option1=$_POST['option1'];
      $option2=$_POST['option2'];
      $option3=$_POST['option3'];
     } 
    ?>    
   <form method="POST" name="contact_form"
  action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>">
 <input type="radio" name="yesno1" value="yes" style="outline:0;"/>Yes
 <input type="radio" name="yesno1" value="no" style="outline:0;"/>No
 <input type="radio" name="yesno2" value="yes" style="outline:0;"/>Yes
 <input type="radio" name="yesno2" value="no" style="outline:0;"/>No
 <input type="checkbox" name="option1" value="Milk"> Milk<br>
 <input type="checkbox" name="option2" value="Butter" checked> Butter<br>
 <input type="checkbox" name="option3" value="Cheese"> Cheese<br>
 <input type="submit" value="Submit" name='submit'>
 </form>

一旦我点击提交按钮,通常我在单选中选择的值,在复选框中标记的值都不见了,所以我怎么能保持值,即使在点击提交按钮或使用php刷新页面后,javascript也很好,如果有人能帮助我在php和javascript上,因为我不是很好,感谢善良的帮助:)

下面的例子

<input type="checkbox" name="option1" value="Milk" <?php echo ($_POST['option1'] == 'Milk' ? 'checked' : '') ?>> Milk<br>

From MDN:

input (<input>)元素用于创建交互式控件基于网络的形式。

属性>

[…]

radio:单选按钮。必须使用value属性来定义由该项提交的值。使用checked属性表示是否默认选中。具有name属性的相同值在相同的"单选按钮"中集团";同一时间只能选中组中的一个单选按钮。

这是一个基本的HTML问题。先学走,再学跑;-)