提交表单时在控制器中获取空值

Posted

技术标签:

【中文标题】提交表单时在控制器中获取空值【英文标题】:getting null value in the controller while submitting the form 【发布时间】:2015-12-28 23:18:01 【问题描述】:

我在这里使用提交操作提交表单。在 Controller 中,模型对象显示空值。假设我正在使用 request.getParameter("mcodeName") - 那么我正在获得价值。当我使用 getMcode() 方法时,乳清值为空。请帮我解决这个问题。

@RequestMapping(value="/masterCode.do", method=RequestMethod.POST) 公共 ModelAndView addMasterCode(HttpServletRequest req, HttpServletResponse res, @ModelAttribute("masterCodeBean") MasterCodeBean mCodeBeanObj) 日志信息(“”); 字符串 mCodeName = mCodeBeanObj.getMaster_code_name(); //获取null 字符串 mCodeStatus = mCodeBeanObj.isActive(); //获取null System.out.println("请求代码" + req.getParameter("mCodeName")); System.out.println("请求激活:" + req.getParameter("激活")); ModelAndView 模型 = null; 尝试 model = new ModelAndView("masterCode"); codeDelegate.addMasterCodeDetails(mCodeBeanObj); model.addObject("masterCodeBean", mCodeBeanObj); catch(异常 e) System.out.println(EXCEP_ERR); 返回模型;

我的表单绑定模型属性如

【问题讨论】:

 
输入产品名称:
选择状态: 【参考方案1】:

抱歉,我没有足够的声望来发表评论。所以我在这里写答案。

<form:form id="mCodeForm" method="post" action="masterCode.do" modelAttribute="masterCodeBean"> 
Enter Product Name : <form:input id="mCodeName" path="mCodeName" /> <br>
Select Status : <form:select id="active" path="isActive"> 
<form:option value="0" label="Active" /> 
<form:option value="1" label="De-Active" /> 
</form:select> 
<span> <input type="submit" value="Save" id="save_mstCdeMgr"/> </span> </form:form>

    setter 和 getter 应该遵循一些代码约定。 假设如果你有mCodeName 作为类变量,那么getMCodeName()setMCodeName(String mCodeName)

    当您使用表单标记时,路径只不过是modelAttribute 字段名称。无需编写 id 和 name 属性,因为它在运行时生成它们。某些客户端验证或 javascript 相关目的需要该 id。

    &lt;form:input id="mCodeName" path="mCodeName" /&gt; 在运行时转换为 html 代码为&lt;input type="text" id="mCodeName" name="mCodeName" /&gt;

试试这个,让我知道。

【讨论】:

以上是关于提交表单时在控制器中获取空值的主要内容,如果未能解决你的问题,请参考以下文章

怎么加“?”用js提交表单时在字符串中?

首次提交表单时为空值

如何在 Laravel 中提交具有空白或空值和非空白值的表单

Spring mvc 表单提交问题!!关于date类型!!

springMVC中表单提交出现400解决办法

将表单添加到页面后提交表单