您的位置:程序门 -> java -> j2ee / ejb / jms



struts高人指点下拉列表问题


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


struts高人指点下拉列表问题[已结贴,结贴人:zengbo0710]
发表于:2007-03-22 11:25:25 楼主
数据库:
userinfo(uid(int),****,code(int),did(int))对应userform
code(codeid(int),codename(varchar))对应一个list
表关系
userinfo.code=code.codeid

struts高人指点下拉列表问题

代码:
session.setattribute( "userform ",   userform);
session.setattribute( "list ",   list);

页面:
这个用到了tiles框架
将要修改的值从一个action传到这个页面,修改后提交
<%@   page   language= "java "   pageencoding= "gbk "%>

<%@   taglib   uri= "http://struts.apache.org/tags-bean "   prefix= "bean "   %>
<%@   taglib   uri= "http://struts.apache.org/tags-html "   prefix= "html "   %>
<%@   taglib   uri= "http://struts.apache.org/tags-logic "   prefix= "logic "   %>
<%@   taglib   uri= "http://struts.apache.org/tags-tiles "   prefix= "tiles "   %>
<%@   page   import=com.zengbo.struts.form.*   %>
<%
userform   userform   =   (userform)session.getattribute( "userform ");
string   code   =   userform.getcode()+ " ";
%>

<p   align= "center "> 更新数据 </p>
    <p   align= "left "> <html:link   href= "./user.do?operator=getfirstpage "> 回显示页面 </html:link> </p>
      <html:form   action= "/user.do?operator=EXECuteupdate "   method= "post ">
        <table   align= "center "   border= "1 ">
        <tr>
        <td> 用户名: </td> <td> <html:text   property= "username "   name= "userform "/> </td> <html:hidden   property= "userform "  

value= "uid "/>
        </tr>
        <tr>
        <td> 密   码: </td> <td> <html:text   property= "password "   name= "userform "/> </td>
        </tr>
        <tr>
        <td> email: </td> <td> <html:text   property= "email "   name= "userform "/> </td>
        </tr>
        <tr>
        <td> 状   态: </td> <td> <html:radio   property= "state "   value= "0 "   name= "userform "/> 启用
            <html:radio   property= "state "   value= "1 "   name= "userform "/> 禁用 </td>
        </tr>
        <tr>
        <td> 部   门: </td>
        <td>
<!--获取表单对应的值进行修改-->
        <html:select   property= "code "   value= " <%=code%> ">
        <html:options   collection= "list "   property= "codeid "   labelproperty= "codename "/>
        </html:select>
        </td>
        </tr>
        <tr>
        <td> <html:submit   value= "提   交 "/> </td> <td> <html:reset   value= "重   置 "/> </td>
        </tr>
        </table>
        </html:form>


我现在删除
<html:select   property= "code "   value= " <%=code%> ">
        <html:options   collection= "list "   property= "codeid "   labelproperty= "codename "/>
</html:select>

页面可以正常显示,如果加上下拉列表就报错!!
org.apache.jasper.jasperexception:   /useredit3.jsp(7,17)   quote   symbol   expected
org.apache.jasper.servlet.jspservletwrapper.handlejspexception(jspservletwrapper.java:512)
org.apache.jasper.servlet.jspservletwrapper.service(jspservletwrapper.java:377)
org.apache.jasper.servlet.jspservlet.servicejspfile(jspservlet.java:314).....
........

如果让页面没有java代码要如何改,下面这样可以吗?
<html:select   property= "code "   value= " <bean:write   name= "userform "   property= "code "/> ">
        <html:options   collection= "list "   property= "codeid "   labelproperty= "codename "/>
  </html:select>

发表于:2007-03-23 11:11:551楼 得分:20
//session.setattribute( "userform ",   userform);不好
应该是
userform.setusername(userinfo.getusername);之类的,
界面用 <html:text   property= "username "/>
界面上的就自动可获取到值了

userform.setcode(userinfo.getcode().getcodeid());
下面改成
<html:select   property= "code ">
<html:options   collection= "list "   property= "codeid "   labelproperty= "codename "/>
</html:select>

下拉表就可以自动设初了


发表于:2007-03-23 11:12:422楼 得分:0
界面上的 <%
userform   userform   =   (userform)session.getattribute( "userform ");
string   code   =   userform.getcode()+ " ";
%> 也就可以不要了

还不懂找我505410175


快速检索

最新资讯
热门点击