【问题标题】:why option selected doesn't comes first为什么选择的选项不是第一位的
【发布时间】:2012-04-04 02:57:42
【问题描述】:

我创建了一个 PHP 代码来回显以下 div

<div id="main_catsel">
<select id="maincat" >

    <option value="1">none</option>
    <option value="2">Computer</option>
    <option value="4">Refrigerator</option>
    <option value="13" selected="selected" >Grinder</option>
    <option value="21">Bed</option>

</select>
</div>

我使用选项值和名称作为查询的结果。但是现在仍然首先显示的默认结果是根据 id 而不是根据 selected="selected"。任何人都可以为此提出解决方案。无法删除 id ,因为它需要插入。

  $maincat .='<div class="main_catsel">';
     $sqlmaincat = $ilance->db->query("SELECT
            cid FROM " . DB_PREFIX . "seller_profile 
            WHERE userid = '" . $uid . "'");
    $row = $ilance->db->fetch_array($sqlmaincat);
    $sqlcat = $ilance->db->query("SELECT
            cid,title_spa 
            FROM " . DB_PREFIX . "categories 
            WHERE parentid = '0'
            ");
         if ($ilance->db->num_rows($sqlcat) > 0)
         {
          $maincat .='<h2><select id="maincat">';
           while ($rows = $ilance->db->fetch_array($sqlcat))
            {  
             if($rows['cid']==$row['cid'])
             {
              $maincat .='<option selected="selected" value="'.$rows['cid'].'">'.$rows['title_spa'].'</option>';
              }
              else
              {
                $maincat .='<option value="'.$rows['cid'].'">'.$rows['title_spa'].'</option>';
                }
             }  
                $maincat .='</select></h2>';
       }
        $maincat .='</div>';

【问题讨论】:

  • 你能举一个活生生的例子吗?我粘贴了你的 html 代码结果,它工作正常:jsfiddle.net/GLDFR
  • 它甚至在 IE 中也能正常工作,你确定你的 php 脚本输出的 html 完全一样吗?

标签: php html


【解决方案1】:

你用的是什么浏览器?

"On SGML and HTML"指出有些浏览器只支持最小化形式,即selected而不是selected="selected"

或者,也许您之前选择了某些内容,而您的浏览器正在记住您的选择。尝试按住 Shift 并单击重新加载按钮,或按 Ctrl+F5

或者您的浏览器正在缓存页面的旧版本。再次 Shift+Reload 应该会有所帮助。 Bypass your cache 上的浏览​​器特定详细信息。

【讨论】:

  • 怀疑是浏览器记住了以前的输入 - 是的 Shift-Refresh。
  • 是的,Firefox 会记住刷新时最后选择的内容,而不是设置为“已选择”的内容。
【解决方案2】:


看来你只是这样做
$("select#maincat").val("13");

就是这样。试试这个,让我进一步了解。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-10
    相关资源
    最近更新 更多