почему у вас есть '?callback=?'
в конце URL?это jsonp
?да, затем измените dataType:'jsonp'
Изменить
сделать обработчик ошибок
$.ajax({
url: 'localhost:39657/List/' + $(this).val(),
dataType: "json",
success: function(json) {
alert("success");
},
error:function(xhr){
console.log(xhr.responseText);
}
});
посмотреть, если он попадает в обработчик успеха или обработчик ошибок и какое сообщение об ошибке делает этодать?я не думаю, что что-то не так с синтаксическим анализом json, так как он действителен для json и хорошо анализируется смотрите здесь
, как указано вкомментарии, к которым вы добавляете блюз CORS , который реализован как функция безопасности для предотвращения атак межсайтового скриптинга, которые вы не можете использовать jsonp
, просто установив для dataType значение jsonp на клиентесторона, сторона сервера также должна быть настроена, если это веб-сервис, вы можете установить заголовок ответа, чтобы разрешить междоменное распределение ресурсов на
var resp = new HttpResponseMessage();
resp.Headers.Add("Access-Control-Allow-Origin","*");
или вы можете сделать сторону сервера proxy и пусть этот прокси вызывает другой проект, будь то веб-служба или веб-приложение, а затем возвращает полученный ответ клиентской стороне