Размещение формы без изменения страниц в jsp - PullRequest
1 голос
/ 14 мая 2009

В jsp, как вы публикуете форму, не меняя страницу?

По сути, я пытаюсь:

1) Сначала запустите сервлет на бэкэнде с сообщением для обработки запроса HttpServletRequest. 2) Во-вторых, после завершения сервлета ответное сообщение будет опубликовано в DIV на странице с помощью функции прототипа Ajax.Updater.

Все, не покидая страницы, конечно.

Ответы [ 3 ]

1 голос
/ 12 сентября 2009

Вы можете сделать это через jQuery.AJAX: http://docs.jquery.com/Ajax

example : $.post(servleturl, paramters, callbackfunction, "html");
0 голосов
/ 19 мая 2009

Есть два метода, которые я знаю. Во-первых, вы можете извлечь значения из формы и отправить их в виде отдельного Ajax.Request. Аламар опубликовал несколько хороших инструкций по этому вопросу:

Используйте Form.serialize (true), чтобы получить хеш с именами параметров в качестве ключей.

Вы можете делать с этим все, что хотите хэш, включая удаление входных данных, изменяя их значения, фильтруя их и так далее.

Ajax.Updated, тогда примут, что модифицированный хеш как параметр.

Другой метод - создать iFrame, который будет принимать ответ от вашего запроса формы, используя свойство target для элемента формы. Если вы работаете в одном домене, у вас будет доступ к содержимому этого iFrame, и вы сможете использовать возвращенную информацию, чтобы обновить родительскую страницу любыми сообщениями, которые вы хотите вернуть. Этот подход более сложен, но в некоторых случаях необходим. Например, если вы работаете со входами загрузки файлов, сериализованный хэш в первом подходе не будет работать.

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

Я использую немного прототипа, который вы, вероятно, хотите работать, просто отправьте свою форму, в моей работе что-то подобное, но почему вы не используете DWR ? Я думаю, что лучше в обратных вызовах асинхронных и тому подобное.

Я проверю код для асинхронной отправки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...