可能重复:
选择列表中的自动换行选项
是否可以在 html<option>
框中包装长文本?
在我的 JSP 中,我有一段代码在循环中从数据库中提取值并将它们附加到列表的<option>
部分<select>
。
以下是我引用的代码部分:
<select name='codes' onchange="showState(this.value)">
<option value="none">Select a code</option>
<%
//Pulls the ids and descriptions from the codes table and stores them in the first drop down
try
{
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
Connection con = DriverManager.getConnection("url","username","password");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("select id, descr from ref_codes");
while(rs.next())
{
%>
<option value="<%=rs.getString(1)%>"><%=rs.getString(1)%> <%=rs.getString(2)%></option>
<%
}
//Closes the database connection
stmt.close();
con.close();
}
catch (ClassNotFoundException e)
{
System.err.println("ClassNotFoundException: " + e.getMessage());
}
catch (SQLException e)
{
System.err.println("SQLException: " + e.getMessage());
}
catch (Exception e)
{
System.err.println("Generic Exception: " + e.getMessage());
}
%>
</select>
我的问题是某些拉取的值太长了,并且下拉框的长度超过了页面的长度,因为它们都保持在同一行。每当我遇到一个很长的字符串时,我都想让它换行到下一行,但仍然包含在同一<option>
值中。
我在谷歌上环顾四周,得到了不同的答案。有人说可以,有人说不能。
但是,大多数答案似乎已经过时(大约从 2000 年代中期开始),而我尝试过的答案大多涉及<div>
标签的使用,但我没有运气。这意味着选项仍然保留在一行上,无论它们有多长,并且不会换行到下一行,尽管我指定width
了<div>
标签。
那么之前有没有人在 html 中做过这个或者知道这是否可能?