Не уверен, если это вызывает проблему, но у вас есть строка, которая гласит:
data: "{}",
должно читаться следующим образом:
data: {},
или вы можете вообще пропустить строку, так как это необязательный параметр для вызова метода. В настоящее время вы устанавливаете его в строковое значение, когда он действительно ожидает параметры для веб-метода, которые могут вызвать проблемы.
Также, строки читают:
contentType: "application/json; charset=utf-8",
dataType: "json",
мне кажется ненужным, потому что для начала не очевидно, что ваш веб-метод на самом деле возвращает json. Я думаю, что это просто возвращает строку. Попробуйте полностью удалить эти три строки и посмотрите, не начнет ли это работать.