我有一个下拉菜单如下:
<select onchange="random_function()" id='choice' >
<option selected="selected" >
Make a choice
</option>
</select>
我通过 <select>
中的 php 请求填充它标记如下:
<?php
include 'config.php';
$query = $pdo->query('
SELECT choices
FROM allTheChoices'
);
while ($row = $query->fetch()){
echo "<option>".$row['choices']."</option>";
}
?>
目前,我的数据库不完整,我只有 2 个选项可以显示,但将来会有很多(100+)。
我的目标是找到一种方法让选择只显示 10 个选项,并且它应该显示一个滚动条以查看所有剩余的选项。
我已经尝试使用 <select size="10">
但是下拉菜单的设计完全改变了而且很糟糕。
您是否有一种简单的方法可以在不改变设计的情况下做到这一点?
最佳答案
使用这段代码来实现我想要的:
<select style="position:absolute;" onmousedown="if(this.options.length>8)
{this.size=8;}" onchange='this.size=0;' onblur="this.size=0;" >
确保使用以下内容以避免容器 div 在选择选项时扩展:
style="position:absolute;"
并使用您要显示的选项数编辑以下代码(本例中使用 10 个):
onmousedown="if(this.options.length>10){this.size=10;}"
所以我使用的整个 html 代码是:
<select style="position:absolute;" onmousedown="if(this.options.length>8)
{this.size=8;}" onchange='this.size=0;' onblur="this.size=0;" >
<option selected="selected" >
Make a choice
</option>
</select>
关于php - 限制由 php 填充的下拉菜单显示的选项数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44829717/