【问题标题】:PHP/HTML Radio Button Checked on Default issue在默认问题上检查 PHP/HTML 单选按钮
【发布时间】:2013-03-21 11:31:03
【问题描述】:

基于 PHP/MySQL 创建单选按钮集

在默认情况下检查按钮时遇到问题: 它的样子:

代码:

$first = TRUE;
if (mysql_num_rows($result))
{
   for ($j = 0; $j < mysql_num_rows($result); $j++)
   {
     $currentCat = mysql_result($result, $j, 'category');
     if ($first == TRUE)
     {
       $first = FALSE;
       echo "<input type='radio' name='createCat' value='$currentCat' checked='checked' />$currentCat checked";
     }
     else
     {
       echo "<input type='radio' name='createCat' value='$currentCat' />$currentCat ";
       echo "non";
     }
   }
   echo <<<_END
   <br /><input type='submit' value='Create' /> $error
   </form>
_END;
}

注意第一个框没有被选中 HTML 格式的输出:

<input type='radio' name='createCat' value='opt1' checked='checked' />opt1  checked<input type='radio' name='createCat' value='opt2' />opt2 non<input type='radio' name='createCat' value='Accounts' />Accounts non             <br /><input type='submit' value='Create' /> 

【问题讨论】:

  • 我看不到你最初在哪里设置$first
  • 不包括在内。但正如您从回声中看到的那样,“已检查”在第一类旁边。所以 first 显然设置为 true。
  • 这有点奇怪.. 生成的 HTML 是什么?
  • 对我来说很好用...涉及任何 Javascript?尝试不只是刷新页面,而是单击地址栏中的 URL 并按 Enter,这将确保表单处于初始状态。
  • 您是否在其他浏览器中尝试过?这里发生了一些奇怪的事情......如果您的 PHP 代码正是您在此处发布的内容,那么它应该可以工作。除了浏览器或浏览器插件行为不端(或者只是需要像我上面提到的那样重置表单)之外,我能想到的唯一原因是一个错字。

标签: php html mysql radio checked


【解决方案1】:

将您的第一个选项更改为如下所示,它应该默认为选中:

echo "<input type='radio' name='createCat' value='$currentCat' checked/>$currentCat checked";

注意你有

checked="checked"

删除 ="checked" 部分将解决问题。

【讨论】:

    猜你喜欢
    • 2013-02-07
    • 2015-05-21
    • 2021-11-10
    • 2023-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多