使用ajax加载弹出窗口

时间:2009-05-11 11:57:57

标签: java jquery spring xt

我有一个jsp页面,它应该使用ajax加载弹出窗口。页面内容由用户填写的表单确定。

这样的事情:

的javascript:

ajax('getPage.action', 'content_id', 'form_id');

foo.jsp:

<div id="content_id"></div>

<form id="form_id">
 ...
</form>

的java /弹簧:

@RequestMapping("getPage.action")
MyController extends AbstractCommandController {
  RealDto dto = (RealDto)command;
  ...
  return new ModelAndView("foo", data);
}

对我来说最困难的部分是如何轻松地将表单数据作为ajax调用发送。我可以在这里使用jQuery吗?表单会动态更改,因此列出表单的所有字段会非常麻烦。

使用Springs XT(我从未拥有)会有帮助吗?

3 个答案:

答案 0 :(得分:2)

jQuery form plug-in可以帮助您轻松地将常规表单转换为Ajax表单。您只需要一行代码:

$("#myform").ajaxForm(
   {beforeSubmit: validate, success: showPopup} );

答案 1 :(得分:2)

是的,您可以使用serialize轻松转换表单以发送数据。

$("#form1").submit(function() {
    $.get("/desiredURL", $("#form1").serialize(), function(response) {
        // send response data to a popup
    }
}

您可以使用getpost发送数据。

对于我喜欢的弹出窗口facebox,但有很多选择。

答案 2 :(得分:0)

我不了解jQuery,但对于原型来说这很容易:

new Ajax.Request('getPage.action', {
    parameters: $('form_id').serialize(true),
    onSuccess: someMethod
);

查看Prototype API docs

此页面包含与jQuery相同的信息:http://docs.jquery.com/Ajax