【发布时间】:2019-02-27 22:40:21
【问题描述】:
我正在使用列出人员姓名的选择下拉列表制作表单。
如果列表中没有此人,我还希望表单为您提供选择“其他”的选项,然后实际输入某人的姓名(如普通文本输入框)。
我不希望文本输入部分出现在下拉列表下方的单独框中,我希望它们都在同一个框中。
在 vanilla javascript 和没有 jquery 插件的情况下可以做到这一点吗?
<form action="" method="post">
<br>
List of people:
<select>
<option>John Doe</option>
<option>Jane Doe</option>
<option>Richard Doe</option>
<option>Other (type name here)</option>
</select>
<br><br>
<input type="submit" value="Submit">
<br><br>
</form>
【问题讨论】:
-
您可以将下拉列表更改为列表,将每个项目放在 (
<li></li>) 之间,并使用 css 和overflow-y: scroll;为ul提供固定高度,您可以使用 jQuery 切换其高度属性. -
您好,此人员列表将是动态的并链接到数据库中的表。人们会来来去去,所以我不能使用固定高度,因为高度需要不断变化
-
没关系,
overflow-y: scroll;让用户在项目数超过给定高度时滚动。如果你想在下拉列表中有一个文本框,你别无选择,只能实现类似的东西。你只需要实现一个方法来从数据库中的记录生成<li></li>。
标签: javascript html forms drop-down-menu textinput