Для тех, кто сюда попал:
Вы говорите jquery, что сервер вам точно вернет json, а он возвращает вам пустую строку.
Выполните код
JSON.parse('');
Он даст ошибку, джейквери выполняет этот код за вас, чтобы вам не пришлось руками писатьJSON.parse(data)
каждый раз, но т.к. данный скрипт падает ошибкой, срабатывает error callback
В коде, который вы видели на другом сайте с сервера может возвращаться настоящий json, либо там была другая версия jquery (потенциально возможно)
Если не уверены, что сервер вернет определенный формат данных либо вернет их вообще, просто не указывайте dataType.