我有这段代码:
<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>
我想要的是根据我的数据库字段的值自动选择一个单选按钮...但它不是真的有效,如果有人可以帮助我,我真的很感激:)
答案 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>