1

我试试这个例子……学生类对象在控制器端。我们可以直接使用它。但这里页面正在提交。

在这里,我希望它使用 jquery ajax 调用 post 方法并将数据作为类对象发布。而不是发送每个输入字段值。

我怎样才能做到这一点?

例如我想向这个控制器发送 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>
4

2 回答 2

2

我将回答一个现有的问题.. jQuery AJAX 提交表单

要使 Spring 的模型属性映射起作用,您只需确保表单输入名称保持一致。逐步将传统表单提交转换为 ajax 样式表单提交的最佳方法是捕获表单提交事件,序列化表单并进行 ajax 调用。由于所有参数名称和值都将保持一致,因此您的后端代码将按原样工作。

注意:您必须以不同的方式处理响应,因为正常的表单提交会返回成功或错误页面,而使用 ajax 则需要其他内容。但是由于这个问题是关于表单提交的,所以不会详细讨论响应处理。

希望这能回答你的问题。

于 2013-04-29T14:12:37.220 回答
1

您必须将表单值转换为 json,并使用 ajax 发布请求将数据提交到服务器。

我使用 jQuery 的 toObject 插件完成了它。和 JSON 字符串化函数。

于 2013-04-29T13:30:58.053 回答