Перерисование страницы с помощью JQuery+PHP
Не получается перерисовать страницу с помощью AJAX JQery. Код js:
$.ajax({
url: form.attr('action'),
type: 'POST',
dataType: 'json',
data: data,
success: function(json) {
if (json.error === true) {
if (json.login === false) {
$('.block_error, .login_error').show();
}
if (json.pass === false) {
$('.block_error, .pass_error').show();
}
}
if (json.sucsess === true) {
window.location.href = '/mvc/account/new_user/';
}
}
Обработка на сервере:
public function new_user() {
$this->view->arResult['NEW_USER'] = true;
$this->index();
}
Здесь вызывается метод index() родительского класса (Controller), где вызывается метод объекта View (так же в родительском классе) render():
public function __construct() {
$this->view = new View;
$this->model_name = strtolower(get_class($this)) . '_model';
$this->filemodel_name = $_SERVER['DOCUMENT_ROOT'] . '/mvc/models/' . $this->model_name . '.php';
if (file_exists($this->filemodel_name)) {
require_once $this->filemodel_name;
$this->model = new $this->model_name;
}
}
public function index() {
$this->view->render(strtolower(get_class($this)));
}
Функция render непосредственно:
public function render($path, $file_name = 'index') {
if (file_exists($_SERVER['DOCUMENT_ROOT'] . '/mvc/views/' . $path . '/' . $file_name . '.php')) {
require $_SERVER['DOCUMENT_ROOT'] . '/mvc/views/' . $path . '/index.php';
}
}
При этом в девтулсе отображается POST-запрос (а так же и отдаваемый POST-ответ), при 2м клике открывается корректная страница (которая и должна отрисоваться), но на самой странице изменений не происходит. Почему так?