我知道这应该很简单,但我不知道问题出在哪里。 我有这两个jquery日期选择器:
<script>
$(function() {
$( "#iniDate" ).datepicker({ dateFormat: "dd-mm-yy", firstDay: 1, changeYear: true });
$( "#endDate" ).datepicker({ dateFormat: "dd-mm-yy", firstDay: 1, changeYear: true });
});
</script>
和JSP:
<form:form method="post" action="result" commandName="mainForm">
<p>Fecha inicio: <input type="text" id="iniDate" path="iniDate"/></p>
<p>Fecha fin: <input type="text" id="endDate" path="endDate"/></p>
<p class="submit"><input type="submit" name="commit" value="Go"></p>
</form:form>
当我单击文本框并选择日期时,它会在字段中正确复制,但是当我提交表单时,在处理其POST方法的控制器中读取其值时,我总是得到“null”。 / p>
有什么想法吗?
答案 0 :(得分:2)
尝试为这些输入字段命名,如果不使用,则删除路径
<p>Fecha inicio: <input type="text" id="iniDate" name="iniDate"/></p>
<p>Fecha fin: <input type="text" id="endDate" name="endDate"/></p>
答案 1 :(得分:1)
<input type="text" id="iniDate" name="iniDate"/>
名称属性是必需的,因为当表单提交时,它会自动映射spring-mvc中的pojo类字段,而pojo类变量名必须与属性名称相同。 我们知道在jsp中我们使用
<jsp:useBean id="person" type="" class="">
<jsp:setProperty name="person" property="" value="" />
</jsp:useBean>
这与使用java bean类(即pojo类)映射字段的操作相同。