您的位置:程序门 -> java -> web 开发



请问为什么option中值提交,不管选择那个动态值,提交到action中去的,总是当user.getroleid().equals(role.getrolesid()))这个值呢


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


请问为什么option中值提交,不管选择那个动态值,提交到action中去的,总是当user.getroleid().equals(role.getrolesid()))这个值呢[无满意答案结贴,结贴人:zeng_84_long]
发表于:2007-11-15 13:21:27 楼主
相关代码
<%
    request.setcharacterencoding("gb2312");
    list   userroles   =   (list)request.getattribute("userroles");
    list   roles   =(list)request.getattribute("roles");
%>

<!doctype   html   public   "-//w3c//dtd   html   4.01   transitional//en">
<html>
    <head>    
        <title> tos   oa用户角色一览表 </title>
      </head>
    <body>
        <form   action="updateuserroles.do"   method="post"   name="userrolesform">
            <table   align="center"   border="0"   cellpadding="1"   cellspacing="1"   bgcolor="blue"   width="500">
                <tr   align="center"   bgcolor="#ffffff">
                    <td   colspan="6"> <h4> 用户角色一览表 </h4> </td>
                </tr>
                <tr   bgcolor="#ffffff"   align="center">
                    <td> <input   type="checkbox"   disabled="disabled"     > </td>
                    <td> 姓名id </td>
                    <td> 姓名 </td>
                    <td> 部门id </td>
                    <td> 部门名 </td>
                    <td> 角色 </td>
                </tr>
                <%
                    for(iterator   iter   =   userroles.iterator();iter.hasnext();){
                        user   user   =   (user)iter.next();
                %>
                <tr   bgcolor="#ffffff"   align="center">
                    <td> <input   type="checkbox"   name="stuff_id"   value=" <%=user.getstuff_id()%> "> </td>
                    <td> <%=user.getlogin_name()%> </td>
                    <td> <%=user.getuname()%> </td>
                    <td> <%=user.getdeptcode()%> </td>
                    <td> <%=user.getdeptname()%> </td>
                    <td>
                      <select   name="roleid">
                        <option> </option>
                  <%
                    for(iterator   iter1   =   roles.iterator();iter1.hasnext();){
                        roles   role   =   (roles)iter1.next();
                        string   selected=   "";
                        if(user.getroleid().equals(role.getrolesid())){
                            selected   =   "selected";
                        }
                %>
                <option   <%=selected%>   value=" <%=role.getrolesid()%> "   > <%=role.getrolesid()%> : <%=role.getrolesname()%> </option>              
                <%}%>
                          </select>
                </tr>
            <%}%>
            <tr   bgcolor="#ffffff">
                <td   colspan="6"   align="center"> <input   value="确定"   type="submit"   onclick="return   check();">   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                                                        <input   value="取消"   type="reset">   </td>
            </tr>
            </table>
        </form>
    </body>
</html>
发表于:2007-11-15 14:05:401楼 得分:0
.......
发表于:2007-11-15 14:18:482楼 得分:0
是不是   string       selected=       "   ";  
                                                if(user.getroleid().equals(role.getrolesid())){  
                                                        selected       =       "selected   ";  
                                                }  
这里有问题,看了半天其他的好像没什么问题。。。你先把selected这个设置去掉试试看
发表于:2007-11-15 14:19:043楼 得分:0
                                        for(iterator       iter1       =       roles.iterator();iter1.hasnext();){  
                                                roles       role       =       (roles)iter1.next();  
                                                string       selected=       "   ";  
                                                if(user.getroleid().equals(role.getrolesid())){  
                                                        selected       =       "selected   ";  
                                                }
<option       <%=selected%>       value=   "   <%=role.getrolesid()%>   "       >   <%=role.getrolesid()%>   :   <%=role.getrolesname()%>   </option>      

我受不了了,你的代码可不就是这么写的吗?
建议以后不要将java代码写在页面了,现在学习jsp,至少也得“背”一个框架学习,比如比较经典的struts框架里面的html标签,或者用beehive的标签,还有jstl标签,都可以为你提供画面优越的服务!    
发表于:2007-11-15 14:36:234楼 得分:0
谢谢..呵呵
发表于:2007-11-15 14:38:065楼 得分:0
kbryant   :selected这个设置去不去掉   都是一样的


快速检索

最新资讯
热门点击