ssh表单提交问题

JavaEthan 2012-03-27 12:06:55
<form action="st.do?op=doAdd" method="post">
<table>
<tr>
<td>姓名</td>
<td><input type="text" name="st.name"/></td>
</tr>
<tr>
<td>性别</td>
<td><input type="text" name="st.sex"/></td>
</tr>
</table>

<input type="submit" value="提交">
</form>


上面是add.jsp的内容,我想往struts的from中保存值,可是form中全是null,我想知道input的name如何写啊 ?
...全文
276 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
ITSource 2012-03-28
  • 打赏
  • 举报
回复
如果为了方便取数据,你可以将姓名和性别等这些信息封装成一个VO类,在action类中为这个VO类提供setter和getter方法,这样在jsp中就可以通过这个action中的VO对象名.属性名获取值了。例如:
<td>姓名</td>
<td><input type="text" name="useVO.name"/></td>

还有种方法就是你直接在action中为name提供get和set方法,就可以这样写<td>姓名</td>
<td><input type="text" name="name"/></td>这样也能获取值,两种方法都可以,关键看自己方便用哪种,通常建议用第一种,这样感觉封装好些

希望能给你的问题提供到帮助~

杨超 2012-03-28
  • 打赏
  • 举报
回复
只有WebWork和Struts里面才支持st.name这种格式。
杰富济贫 2012-03-28
  • 打赏
  • 举报
回复
form中属性的名字需要跟input中的name 属性一致
杰富济贫 2012-03-28
  • 打赏
  • 举报
回复
form的名字需要跟input中的name属性一致
  • 打赏
  • 举报
回复
如果是用的struts2的话 , stu.name 的stu 要跟action中的stu对应上
sunxiangfei91 2012-03-28
  • 打赏
  • 举报
回复
如果你用的是 struts2 那么在 action 里面要有一个 st 的对象 。。
zhangyan0813 2012-03-28
  • 打赏
  • 举报
回复
貌似form表单中没有"st.do?op=doAdd"这种写法吧,如果要传值但不想在页面显示出来,直接用"hidden"就好了啊!!!!1
liyunyong888888 2012-03-28
  • 打赏
  • 举报
回复
这是struts1啊,你怎么用2的name啊,直接与form对应就可以的啊
良才2015 2012-03-28
  • 打赏
  • 举报
回复
1.去掉st.
2.在action中写name和sex的get和set方法,或者在实体类中写
dryZeng 2012-03-27
  • 打赏
  • 举报
回复
你这是struts1吧?把st.name的st.去掉,只有webwork里才支持这种写法。
fangkaifang 2012-03-27
  • 打赏
  • 举报
回复
跟实体里这个字段对应
  • 打赏
  • 举报
回复
域模型,name属性没有错误st.name,这个st在Action里面要有一个model的实例,比如St st=new St(),这个St是一个实体对象,封装了属性和属性的setter getter方法;另外,你表单的ACTION(st.do?op=doAdd)是什么东西啊,直接一个action名字就可以啊!
  • 打赏
  • 举报
回复
应该是#st.name吧
根正苗红 2012-03-27
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 fangkaifang 的回复:]
跟实体里这个字段对应
[/Quote]
这个怎么就可以用了呀?楼主的思路是在action中定义了这个对象,然后form提交两个对象的属性。action中直接获取这个对象的两个属性值。请问楼主,你在action中定义对象的属性是st吗???还有action是怎么获取的?
cxw3152 2012-03-27
  • 打赏
  • 举报
回复
方法一:直接在action中通过String stsex = request.getParameter("st.sex");String stName = request.getParameter("st.name");如果还是得不到值。则把st.sex写成sex把st.name写成name应该就可以得到、但是相应的也要改request.getParameter方法中的参数
方法二:使用struts1标签 前提是要在页面中引入相应的标签
<html:form action="st.do?op=doAdd" method="post">
<table>
<tr>
<td>姓名</td>
<td><input type="text" name="name"/></td>
</tr>
<tr>
<td>性别</td>
<td><input type="text" name="sex"/></td>
</tr>
</table>

<input type="submit" value="提交">
</html:form>
但是必须有一个对应的form和你的action进行关联。

81,090

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧