JQuery оповещение после отправки формы и перенаправления

0

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

После регистрации пользователя с сайтом он перенаправляет их на страницу своего профиля.

Я хочу сделать это, ЕСЛИ запрос пришел от имени с идентификатором new_user, а после того, как пользователь будет перенаправлен на страницу своего профиля, вызовите предупреждение.

Итак, на странице профиля, после того, как он появился из формы new_user, вызовите предупреждение.

Сейчас я делаю это:

$('form#new_user').submit(function(e) {
    e.preventDefault(); // don't submit multiple times
    this.submit(); // use the native submit method of the form element
    alert("Testing page load.");
});

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

Как я могу это сделать?

Благодарю.

  • 1
    Вы можете использовать AJAX, чтобы получить ответ, а затем решить, что делать.
  • 0
    Правильно, я хочу видеть оповещение на странице профиля, но только после регистрации - не постоянно.
Показать ещё 2 комментария

3 ответа

0

Вот идея о том, как вы могли это сделать:

#inside your RegistrationsController

def create
  user = User.new(user_params)
  if user.save
    redirect_to user_profile_path(user, from: 'registration), notice: "Successful registration."
  else
    # code for handling error in registration
  end
end

Теперь, когда у вас есть параметр :from переданного в user_profile_path каждый раз, когда пользователь только что зарегистрирован, вы можете сделать что-то подобное в своем JS для своей страницы профиля

if(window.location.search == 'from=registration') {
  alert("Redirected from registration!");
}

Дай мне знать, если это работает.

0

Где вам нужно это предупреждение? на странице регистрации или странице профиля?

Если вы хотите вызывать предупреждение на своей странице регистрации, лучше вам следует использовать метод ajax post для отправки формы.

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

0

привет, я думаю, вы можете сделать это легко, используя AJAX передать переменные на страницу ajax, а на SUCCESS показать окно предупреждения, которое вы хотите показать. Я думаю, что лучше использовать AJAX для JQuery для вашего сценария.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню