【问题标题】:Spring drop down not rendering options弹簧下拉不呈现选项
【发布时间】:2012-10-08 15:58:08
【问题描述】:

在一个简单的 Spring 3 MVC 应用程序中,我有一些不显示任何选项的下拉菜单。

sn-p的jsp形式为:

<form:form method="POST" commandName="carSelection">
        <form:errors path="*" cssClass="errorblock" element="div" />
        <table>
            <tr>
                <td>Car Make :</td>
                <td><form:select path="makes" multiple="false">
                      <form:options items="${makes}"/>
                    </form:select>
                                </td>
                <td><form:errors path="makes" cssClass="error" /></td>
            </tr>

            <tr>
                <td>Car Make (SimpleList):</td>
                <td><form:select path="simpleModels" multiple="false">
                      <form:options items="${simpleModels}"/>
                    </form:select>
                                </td>
                <td><form:errors path="makes" cssClass="error" /></td>
            </tr>
            <tr>
                <td>Car Model :</td>
                <td>
                    <form:select path="models" items="${models}" multiple="false">
                        <form:option value="NONE" label="--- Select ---" />
                        <form:options items="${models}" itemValue="modelId" itemLabel="modelName"/>
                    </form:select>
                </td>
                <td><form:errors path="models" cssClass="error" /></td>
            </tr>

        </table>
    </form:form>

控制器类我有以下内容:

@Controller
@RequestMapping("/car")
public class CarController {

    /**
     * Initialise the car selection form
     * @param model
     * @return
     * @throws Exception
     */
    @RequestMapping(value = "/carSelectionForm")
    public ModelAndView loginForm() throws Exception {
        ModelAndView mav = new ModelAndView();
        CarSelection cs = new CarSelection();
        List<CarMake> makes = new ArrayList<CarMake>(5);
        makes.add(new CarMake(1, "Ford"));
        makes.add(new CarMake(2, "Fiat"));
        makes.add(new CarMake(3, "Renualt"));
        makes.add(new CarMake(4, "Kia"));
        makes.add(new CarMake(5, "Ferrari"));
        cs.setMakes(makes);

        List<String> simpleList = new ArrayList<String>(5);
        simpleList.add("Ford");
        simpleList.add("Fiat");
        simpleList.add("Renualt");
        simpleList.add("Kia");
        simpleList.add("Ferrari");
        cs.setSimpleModels(simpleList);

        mav.setViewName("carSelectionForm");
        mav.addObject("carSelection", cs);
        return mav;
    }   
}

“无”选项会渲染,并且是唯一显示的选项。我错过了一些基本的东西吗?

【问题讨论】:

    标签: spring spring-mvc


    【解决方案1】:

    你需要在options属性items中设置正确的列表。

    <form:select path="makes" multiple="false">
       <form:options items="${carSelection.makes}"/>
    </form:select>
    
    
    <form:select path="simpleModels" multiple="false">
      <form:options items="${carSelection.simpleModels}"/>
    </form:select>
    

    但我没有控制器中 3. 下拉菜单的项目

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-02-15
      • 2017-05-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-05
      • 1970-01-01
      相关资源
      最近更新 更多