分类:
<select name="">
<%
SortService sortService = new SortService();
List<Sort> li = sortService.list(user.getId());
for (int i = 0; i < li.size(); i++) {
Sort sort = (Sort) li.get(i);
%>
<option>
<%=sort.getName()%>
</option>
<%
}
%>
</select>
就是让前台action中 public String add(){
sortli =sortService.list(u.getId());

article.setTitle(articleInfo.getTitle());
article.setContext(articleInfo.getContext());
article.setIntro(articleInfo.getIntro());

article.setSortId(sortli.get(0).getId());//获取select中的第一个值相对应的id
article.setUserId(u.getId());
articleService.add(article);
return SUCCESS;
}article.setSortId(sortli.get(0).getId());//获取select中的第一个值相对应的id
不知道能不能实现。

解决方案 »

  1.   

    <option>
       <%=sort.getName()%>
    </option>
    option没有给value属性怎么能获取的到ID呢?
    <option value="<%=sort.getId()%>">
    获取选中的ID值?直接request.getParameter("");就可以了呀!
    <select name="sort">这个name必须要加个名字的。
    在action中:String sortID = request.getParameter("sort");//这获取到的就是选中的ID值了
    我看你是用的Struts2,那你可以在action声明一个属性sort并提供getter/setter方法
    就不用request.getParameter()了,直接调用它的set方法就有值了!
    当然前提是action声明的属性和<select>的name保持一致...
      

  2.   

    struts2的标签干这个挺好用的
    干嘛还写html标签
      

  3.   

    <select name="">
                    <%
                    SortService sortService = new SortService();
                    List<Sort> li = sortService.list(user.getId());
                        for (int i = 0; i < li.size(); i++) {
                            Sort sort = (Sort) li.get(i);
                    %>
                    <option <s:if test="判断条件">selected<s:if>>
                        <%=sort.getName()%>
                    </option>
                    <%
                        }
                    %>
                </select>
      

  4.   

    <select name="">
      <%
      SortService sortService = new SortService();
      List<Sort> li = sortService.list(user.getId());
      for (int i = 0; i < li.size(); i++) {
      Sort sort = (Sort) li.get(i);
      %>
      <option <s:if test="判断条件">selected<s:if>>
      <%=sort.getName()%>
      </option>
      <%
      }
      %>
      </select>
      

  5.   

    没搞明白你为什么要这么弄?
    <select name='select'>
    <c:forEach item=${list} var="list"> 
    <option value='${list.id}'>${list.name}</option>
    </c:forEach>
    </select>form提交、传递到后台
    request.getParameter("select");
    这个值就是你选中的
      

  6.   


    接顶,
    还有 稍微解释下select 传送后台的原理
    给<select name="sel"><option value="fda"></option></select>如果你把这个select提交到后台,通过request.getParameter("sel")就可以拿到当前选中的option的value值。这是form提交的基本知识