我尝试this示例...学生类对象在控制器端获取。我们可以直接使用它。但是这里的页面已经提交了。
这里我希望它使用jquery ajax调用post方法并将数据作为类对象发布。而不是发送每个输入字段值。
我怎样才能实现这一目标?
例如,我想将发布请求发送到此控制器
@RequestMapping(value = "/addStudent", method = RequestMethod.POST)
public String addStudent(@ModelAttribute("SpringWeb")Student student,
ModelMap model) {
//here will be my code to use student object....
return "result";
}
使用这个Spring表单..
<form:form method="POST" action="/HelloWeb/addStudent">
<table>
<tr>
<td><form:label path="name">Name</form:label></td>
<td><form:input path="name" /></td>
</tr>
<tr>
<td><form:label path="age">Age</form:label></td>
<td><form:input path="age" /></td>
</tr>
<tr>
<td><form:label path="id">id</form:label></td>
<td><form:input path="id" /></td>
</tr>
<tr>
<td colspan="2">
<input type="submit" value="Submit"/>
</td>
</tr>
</table>
</form:form>
答案 0 :(得分:2)
我将回答一个现有问题.. jQuery AJAX submit form
要使Spring的模型属性映射起作用,您只需确保表单输入名称保持一致。逐步将传统表单提交转换为ajax样式表单提交的最佳方法是捕获表单提交事件,序列化表单并进行ajax调用。由于所有参数名称和值都将保持一致,因此您的后端代码将按原样运行。
注意:您必须以不同的方式处理响应,因为普通表单提交会返回成功或错误页面,而使用ajax则需要其他内容。但由于这个问题与表单提交有关,因此不会详细介绍响应处理。
希望这能回答你的问题。
答案 1 :(得分:1)
您必须将表单值转换为json,并使用和ajax post请求将数据提交给服务器。
我是使用jQuery的toObject插件完成的。和JSON stringify函数。