Загрузка всплывающего окна с помощью ajax - PullRequest
1 голос
/ 11 мая 2009

У меня есть страница 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 ]

2 голосов
/ 11 мая 2009

Подключаемый модуль jQuery может помочь вам легко преобразовать обычную форму в Ajax. Вам нужна только одна строка кода:

$("#myform").ajaxForm(
   {beforeSubmit: validate, success: showPopup} );
2 голосов
/ 11 мая 2009

Да, вы можете использовать serialize для тривиального преобразования формы для отправки данных.

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

Вы можете использовать get или post для отправки данных.

Для всплывающего окна мне нравится facebox , но есть множество вариантов.

0 голосов
/ 11 мая 2009

Я не знаю о jQuery, но для прототипа это легко:

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

Ознакомьтесь с документами по прототипам API .

Эта страница содержит ту же информацию для jQuery: http://docs.jquery.com/Ajax

...