为什么单选按钮不会保持不变并被选中?

时间:2018-10-18 15:59:21

标签: radio-button checked disabled-input

我是新来的,我正在写我的第一个php代码。我想准备一个选择题测验,在该测验中,单击页面末尾的按钮后,单选按钮(测试的选择)将保持选中状态且不可更改。我以这种方式简化了代码:

<?php
$choice1 = "a";
$choice2 = "b";
?>

<form method="post" name="testForm" id="testForm">
    <ul>
        <li><input type="radio" name="q1" value="a"
            <?php if(isset($_POST['test-result']) && $radioVal==$choice1){ echo "disabled='disabled' checked";}?>
            <?php if(isset($_POST['test-result']) && $radioVal<>$choice1){ echo "disabled='disabled'";}?>> 
            <?php echo "<span id='question'>". $choice1 ."</span>";?> </li>
        <li><input type="radio" name="q1" value="b"
            <?php if(isset($_POST['test-result']) && $radioVal==$choice2){ echo "disabled='disabled' checked";}?>
            <?php if(isset($_POST['test-result']) && $radioVal<>$choice2){ echo "disabled='disabled'";}?>> 
            <?php echo "<span id='question'>". $choice2 ."</span>";?> </li>
    </ul><br>
<button class='button' name='test-result'>Finaliza el test</button>
</form>

<?php
    if (isset($_POST['test-result']))
    {
        $radioVal = $_POST["q1"];
    }
?>

但是,单击按钮后,所有无线电均保持未选中状态(这是可以的),但是未选中所做的选择。有人能帮我吗?预先感谢!

1 个答案:

答案 0 :(得分:0)

复选框未显示为已选中,因为在输入框后设置了变量$ radioVal。要解决您的问题,您可以在from之前设置$ radioVal。