Я только что увидел, что этот вопрос получил много просмотров, и он все еще открыт. Я полностью забыл об этом и, надеюсь, это позволит мне закрыть его.
Установка аргумента типа данных на ноль или даже полное удаление аргумента типа данных решит проблему.
В моем примере я возвращаю визуализированное представление (HTML-фрагмент в строке), а в этом коде я указываю тип данных для json, хотя на самом деле это не так. Большинство других браузеров, похоже, игнорируют тип данных, если он неправильный, и переходят к жизни, что позволяет мне добавить результат HTML.
Chrome выдает ошибку.
Текст состояния в порядке, код состояния - 200, потому что фактический запрос ajax прошел нормально. Проблема не имеет ничего общего с самим запросом, проблема в том, что возвращаемые данные - это не то, что я сказал chrome.
Так что хром ломается.
Если я полностью удалю аргумент типа данных, Chrome выяснит, что это за данные, когда они их получают. Если я установлю аргумент типа данных «html», то он также будет работать нормально.
Короче говоря, проблема не в хроме. Это я. Потому что я такой тупой. Я отмечаю это как ответ на этот вопрос, поскольку он отвечает на пример, который я представил в оригинальном вопросе.
В комментариях другие описали другие ситуации, в которых это решение, скорее всего, не поможет.