Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.10.2017, 12:42
Интересующийся
Отправить личное сообщение для Walk Посмотреть профиль Найти все сообщения от Walk
 
Регистрация: 14.08.2017
Сообщений: 28

Передача HTML в JSON - в одном месте работает, в другом - нет
Делаю динамически обновляющиеся страницы, в одном месте все работает нормально:

PHP отдает:
$content = $this->getPage(); // Возвращает HTML код
return  '{"success":"1","content":"'.$content.'"}';


JS принимает:
function updatePage() {
    $.ajax({
        url: '',
        data: {type: 'updatePage'},
        type: 'POST',
        success: function(data){
            data = JSON.parse(data);

            if (data.success === '1') {
                document.getElementById('wind').innerHTML = data.content;
            }
        },
        error: function(){
            alert('Ошибка! Пожалуйста, обновите страницу!');
        }
    });
}


В другом месте делаю аналогично, но JSON ругается на первый же знак <

PHP отдает:
$partForm2 = $model->getForm1Part2(); // Возвращает HTML код

                return '{
                    "success":"1",
                    "partForm2":"'.$partForm2.'"
                }';


JS принимает:
if (getCheckedRadioValue('review_type') === '1') {

        $.ajax({
            url: '',
            data: {type: 'check1'},
            type: 'POST',
            success: function(data){
                data = JSON.parse(data);

                if (data.success === '1') {
                    document.getElementById('div2').innerHTML = data.partForm2;
                }
            },
            error: function(){
                alert('Ошибка! Пожалуйста, обновите страницу!');
            }
        });
    }



Единственная разница - в первом случае это самописный движок, во втором случае - Yii2

json_encode() и json_decode() нигде не используется. Пробовал обрабатывать html через:

$content = json_encode($content);


Все равно ругается на <

Последний раз редактировалось Walk, 11.10.2017 в 12:47.
Ответить с цитированием
  #2 (permalink)  
Старый 11.10.2017, 13:05
Интересующийся
Отправить личное сообщение для Walk Посмотреть профиль Найти все сообщения от Walk
 
Регистрация: 14.08.2017
Сообщений: 28

Разобрался

Во втором случае, в php затесалась строчка echo, из-за неё были все проблемы.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Два варианта паттерна для регулярки. Один работает, другой нет izcian Общие вопросы Javascript 3 25.04.2015 19:45
Передача HTML кода на сервер через Ajax KomaLex AJAX и COMET 2 06.12.2012 15:28
Почему то работает, то нет? gyunduz Общие вопросы Javascript 0 22.01.2011 16:08
не работает JSON в JQuery 1.4.1 mcpro jQuery 7 22.03.2010 17:56
JS меню работает на обычной html странице, а на юкозовском движке нет. adware Я не знаю javascript 10 16.05.2009 16:48