关于jsp页面传值和取值的一些疑惑。
在学习struts时,一直没弄懂在jsp页面通过action传值和取值显示这些问题。当时记过有好几种不同的写法,不过现在都忘了,只剩下一种比较不合理的。如下:
<s:form action="add.action" method="post"> <s:textfield name="adminNo" label="用户名"></s:textfield> <s:textfield name="name" label="用户名"></s:textfield> <s:password name="password" label="密码"></s:password> <s:submit value="提交"></s:submit> </s:form>
然后我记得还有两种,一种是:
<s:textfield name="#Admin.adminNo" label="用户名"></s:textfield>
貌似是这种,Admin是类名,adminNo是类下的一个字段。
第二种是:
<s:textfield name="Admin.adminNo" label="用户名"></s:textfield>没有了“#”号
不知道有没记错,我在网上找的时候可能方法有点不对,找不到准确解决的帖子或者博客。。
好了,我的问题就是,这个name属性里到底要怎么写,action又要怎么的去对应呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
<s:textfield name="Admin.adminNo" label="用户名"></s:textfield>这种可以的,action中写一个get set得到Admin实体,private Admin admin ;
后台用admin.adminNo就可以得到值,至于请求没有进入action,就检查action名称和struts.xml配置是否正确,可以看下ModelDriven<T>这个接口更好用。
依稀记得有两个取值的空间,好久不用忘记了
看过几个,就都是类似admin.name这样传,然后#admin.name这样取。。
我觉得你可以看下源码~~ struts标签应该也是jsp自定义标签的一种,手上没有struts的项目就没办法帮助你咯
我一开始测试的时候是这样写的,但发现怎么都传不了值到action。。
记得写 # 的时候是取值
这么写是对的,后台定义 Admin的实体类,然后在action中
提交后就会自动封装到里面。还有一种是实现 ModelDriven<T>