具有空白默认值的JSP下拉列表

时间:2013-07-19 12:45:03

标签: java jsp

我有一个从数据库查询中填充的JSP Dropdown,它运行正常。

但是我想添加一个空白的默认选项,以便在提交时该字段为空。现在,默认值是从数据库中选择的第一个值。但我希望它看起来是空的。

我使用它的唯一方法是在填充时将 "" 手动添加到列表中。

有更优雅的方式吗?

        <div class="row">
            <label class="span2">Action</label>
            <form:select path="Action">
                <form:options items="${actionList}" />
                <form:errors path="Action" cssClass="error"/>
            </form:select>
        </div>

具有默认值的页面,我不希望默认显示该页面:

enter image description here

3 个答案:

答案 0 :(得分:5)

使用单个选项元素

<form:select path="Action" >
    <form:option  value="" />
    <form:options items="${actionList}" />
    <form:errors  path="Action" cssClass="error"/>
</form:select>

答案 1 :(得分:1)

空的默认设置是没有好的UI-Design。你应该提示一下该做什么。

    <div class="row">
        <label class="span2">Action</label>
        <form:select path="Action">
            <option selected="selected"> -- Please choose --</option>
            <form:options items="${actionList}" />
            <form:errors path="Action" cssClass="error"/>
        </form:select>
    </div>

或者更好的HTML是

    <div class="row">
        <label class="span2">Action
            <form:select path="Action">
                <option selected="selected"> -- Please choose --</option>
                <form:options items="${actionList}" />
                <form:errors path="Action" cssClass="error"/>
            </form:select>
        </label>
    </div>

如果您喜欢将其设置为表格样式,则应删除div,将标签样式设置为display:table-cell and ...

答案 2 :(得分:0)

由于第一个答案并非特别针对用户体验,第二个答案并非如此:/

将前两个答案结合起来将是两全其美的:

<form:select path="Action" >
  <form:option  value="">--Select one--</form:option>
  <form:options items="${actionList}" />
  <form:errors  path="Action" cssClass="error"/>
</form:select>

这将在数据库中存储一个空值。