2

可能重复:
选择列表中的自动换行选项

是否可以在 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 中做过这个或者知道这是否可能?

4

1 回答 1

2

你不能只为下拉菜单拉出你想要的最大字符数,然后重新选择相同的字段,但从下一个字符开始,抓取相同的字符数,等等。然后使用 HTML/CSS 格式来结合并使它们看起来像你想要的。

于 2012-10-02T16:46:38.623 回答