如何在HTML上自动选择PHP单选按钮

时间:2015-01-22 18:34:18

标签: php html radio

我有这段代码:

<tr align="center">
    <td align="center">
        <div class="column column2"><label><input type="radio" name="j" value="Pre-Quarantine" checked="<? if ($dato['Status'] == 'Pre-Quaratine'){ echo true; } ?>"/><span>Pre-Quarantine</span></label></div><span class="clearfix"></span>
    </td>
    <td align="center">
        <div class="column column2"><label><input type="radio" name="j" value="Quarantine" checked="<? if ($dato['Status'] == 'Quarantine'){ echo true; } ?>"/><span>Quarantine</span></label></div><span class="clearfix"></span>
    </td>
    <td align="center">
        <div class="column column2"><label><input type="radio" name="j" value="Released" checked="<? if ($dato['Status'] == 'Released'){ echo true; } ?>"/><span>Released</span></label></div><span class="clearfix"></span>
    </td>
</tr>

我想要的是根据我的数据库字段的值自动选择一个单选按钮...但它不是真的有效,如果有人可以帮助我,我真的很感激:)

5 个答案:

答案 0 :(得分:5)

checked属性会导致检查元素是否存在。您不需要使用checked="0/1"

试试这个:

<tr align="center">
    <td align="center">
        <div class="column column2"><label><input type="radio" name="j" value="Pre-Quarantine" <? if ($dato['Status'] == 'Pre-Quaratine'){ echo 'checked'; } ?> /><span>Pre-Quarantine</span></label></div><span class="clearfix"></span>
    </td>
    <td align="center">
        <div class="column column2"><label><input type="radio" name="j" value="Quarantine" <? if ($dato['Status'] == 'Quarantine'){ echo 'checked'; } ?> /><span>Quarantine</span></label></div><span class="clearfix"></span>
    </td>
    <td align="center">
        <div class="column column2"><label><input type="radio" name="j" value="Released" <? if ($dato['Status'] == 'Released'){ echo 'checked'; } ?> /><span>Released</span></label></div><span class="clearfix"></span>
    </td>
</tr>

答案 1 :(得分:1)

您的PHP开场标记不正确..除非您启用了短标记,否则应为<?php而不仅仅是<? ....

如果必须检查,checked属性的值为checked

替换

checked="<? if ($dato['Status'] == 'Pre-Quaratine'){ echo true; } ?>"

checked="<?php if ($dato['Status'] == 'Pre-Quaratine'){ echo 'checked'; } ?>"

答案 2 :(得分:0)

我发现使用checked =“checked”在大多数浏览器上效果最佳。

答案 3 :(得分:0)

PHP标记应以<?php开头,而不仅仅是<?

<tr align="center">
            <td align="center">
                <div class="column column2"><label><input type="radio" name="j" value="Pre-Quarantine" checked="<?php if ($dato['Status'] == 'Pre-Quaratine'){ echo true; } ?>"/><span>Pre-Quarantine</span></label></div><span class="clearfix"></span>
            </td>
            <td align="center">
                <div class="column column2"><label><input type="radio" name="j" value="Quarantine" checked="<?php if ($dato['Status'] == 'Quarantine'){ echo true; } ?>"/><span>Quarantine</span></label></div><span class="clearfix"></span>
            </td>
            <td align="center">
                <div class="column column2"><label><input type="radio" name="j" value="Released" checked="<?php if ($dato['Status'] == 'Released'){ echo true; } ?>"/><span>Released</span></label></div><span class="clearfix"></span>
            </td>
        </tr>

答案 4 :(得分:0)

也许你想使用三元运算符:

我注意到的其他事情是&gt;

value="Pre-Quarantine"

通知隔离区中的N

和&gt;

$dato['Status'] == 'Pre-Quaratine'

注意拼错的Quaratine缺少N(是故意的?)

<tr align="center">
    <td align="center">
        <div class="column column2"><label><input type="radio" name="j" value="Pre-Quarantine" <?php if ( $dato['Status'] == 'Pre-Quaratine') : ?> checked="checked"<?php endif; ?>/><span>Pre-Quarantine</span></label></div><span class="clearfix"></span>
    </td>
    <td align="center">
        <div class="column column2"><label><input type="radio" name="j" value="Quarantine" <?php if ( $dato['Status'] == 'Quaratine') : ?> checked="checked"<?php endif; ?>/><span>Quarantine</span></label></div><span class="clearfix"></span>
    </td>
    <td align="center">
        <div class="column column2"><label><input type="radio" name="j" value="Released" <?php if ( $dato['Status'] == 'Released') : ?> checked="checked"<?php endif; ?>/><span>Released</span></label></div><span class="clearfix"></span>
    </td>
</tr>