XML не может быть целой программой - PullRequest
1 голос
/ 09 ноября 2010

XML cannot be the whole program - кто-нибудь еще видел эту ошибку firebug? происходит при получении удаленных данных (как бы json) через ajax.

Если тип данных изменился json на html , работает нормально.

Это мой фактический код в php:

Я перезагрузил страницу, когда сессия истекла.

if($action->getRequest()->isXmlHttpRequest())
{           
  $action->getResponse()->setContent("<script>window.location.reload();</script>");      
  $action->getResponse()->send();      
}

firebug отображает следующую ошибку:

XML не может быть всей программой [Сбой при этой ошибке] window.location.reload ();

Ответы [ 3 ]

1 голос
/ 09 ноября 2010

Передаете ли вы правильный формат данных из вызова Ajax? Ошибка говорит о том, что это как-то связано с XML, но вы сказали, что вы установили JSON, а не XML.

0 голосов
/ 06 июля 2012

Вы не можете использовать теги при загрузке таким способом. Попробуйте загрузить операторы Javascript без использования тегов в загруженном файле. например:

Этот код генерирует ту же ошибку, если я загружаю его динамически.

<?php
    echo "<script type='text/javascript'>alert('Hi');</script>";
?>

Этот код не генерирует никаких ошибок и работает как шарм:

<?php
    echo "alert('Hi');";
?>

Это должно вам помочь.

0 голосов
/ 16 декабря 2010

Вы отправляете строку "<script>window.location.reload();</script>", которая содержит не JSON / JS, а HTML.Таким образом, клиент пытается интерпретировать строку как JSON / JS, но замечает, что весь сценарий - это всего лишь один XML-литерал.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...