Как отправить форму с другой страницы? - PullRequest
1 голос
/ 21 апреля 2010

У меня есть двухстраничный сайт. Каждая страница содержит заголовок с «вкладками» вверху для навигации между страницами 1 и 2.

Когда выбрана вкладка, мне нужно, чтобы выбранная страница была повторно отправлена ​​на сервер, чтобы быстро обновить ее перед отображением.

У меня есть форма на каждой странице, которая позволяет вручную обновлять с этой страницы , но мне нужно отправить эту форму с другой страницы.

Например, отображается страница 2. Выбрана вкладка для страницы 1 (которая находится на странице 2). Затем следует отправить форму обновления на странице 1.

Любая помощь приветствуется.

(с использованием jQuery, js, html и CSS)

Ответы [ 2 ]

2 голосов
/ 21 апреля 2010

В идеале, обновление должно выполняться сервером при загрузке страницы. Если это не вариант, я бы использовал метод jQuery $.ajax в синхронном режиме, атакованный на событие нажатия вкладки:

$('a.tab').click(function() {
    $.ajax({
        url: "/refresh",
        method: "post",
        async: false,
        data: { refresh: "very yes" }
    });
});

Установка async в false гарантирует, что запрос завершится до того, как обработчик кликов вернется и новая страница начнет загружаться. Вам нужно будет включить данные формы для отправки в data объект, поэтому невозможно разместить форму, расположенную на другой странице.

На самом деле это практически идентично методу, который использует Google Analytics для отслеживания кликов по исходящим ссылкам.

1 голос
/ 21 апреля 2010

Как вы на самом деле загружаете свои страницы из вкладок? Используете какой-то iframe? Или с помощью вызова AJAX? Использование фреймов может быть более хитрым, чем использование AJAX-вызова.

Если ваша форма имеет идентификатор или класс, вы можете просто использовать функцию submit () в jQuery:

$("#myform").submit();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...