@richman77

Редирект на js, данные берем с сервера по json. Как?

Добрый день.
Опенкарт 3

1. Берем значение url для редиректа и через post передаем в контроллер.
2. Из контроллера передаем значение необходимого url так:
$json['redirect'] = $this->request->post["redirect"];

3. В шаблоне посредством js нужно запустить редирект на передаваемый url. Пытаюсь сделать как-то так, но ничего не выходит...
function () {
if (json['redirect']) {
	location.href = json['redirect'];
}
}

Прошу помощи, как правильно сделать редирект на нужный мне url через json?
  • Вопрос задан
  • 527 просмотров
Пригласить эксперта
Ответы на вопрос 2
ArsenyMatytsyn
@ArsenyMatytsyn Куратор тега JavaScript
Руководитель frontend направления, предприниматель
Не стоит наедятся, что язык PHP будет выполнен в JS. Если ловишь параметры на PHP, то на нем редирект и осуществляй:
header("Location:[url]");

Для передачи же в морду PHP данных, необходимо их правильно передать.
Ответ написан
Комментировать
@richman77 Автор вопроса
Суть в том, что при заполнении формы и нажатия на кнопку - данные в контроллер передаются посредством js кода.

$.ajax({
            url: 'index.php?route=extension/module/test',
            type: 'post',
            data: $('#test2 input[name=\'test3\'], #test2 input[name=\'redirect\']'),
            dataType: 'json',


При этом если было введено значение для редиректа (url страницы, откуда мы пришли на страницу формы), это значение мы передаем назад в js

$json['redirect'] = $this->request->post["redirect"];


И дальше мне нужно тут же в куске кода js сделать или обновление страницы

location.reload();

Или редирект назад на страницу, откуда пришли. но знаний не хватает это реализовать, найти сам пока не смог рабочий вариант кода

заранее спасибо!
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы