Чтобы расширить один из комментариев выше, я получил эту ошибку из-за проблемы в возвращаемых результатах JSON. В частности, одно из строковых значений в данных ответа JSON содержало неэкранированную двойную кавычку. В моем случае это была моя собственная Ajax-функция, которую я вызывал, поэтому я исправил ее, пытаясь избежать двойных кавычек на сервере перед возвратом данных JSON. Затем я обнаружил, что у меня та же проблема с символами перевода строки, поэтому я использовал вызов str_replace, который я нашел в другом посте:
json_encode PHP не экранирует все управляющие символы JSON
function escapeJsonString($value) {
# list from www.json.org: (\b backspace, \f formfeed)
$escapers = array("\\", "/", "\"", "\n", "\r", "\t", "\x08", "\x0c");
$replacements = array("\\\\", "\\/", "\\\"", "\\n", "\\r", "\\t", "\\f", "\\b");
$result = str_replace($escapers, $replacements, $value);
return $result;
}