I had the same problem when calling the asmx web service (.NET).
I resolved it by including my return value with square brackets like this:
return @"[ {{ ""status"" : ""OK"", ""message"" : ""Success !!!"" }} ]";
and then "evaled" my return var due to pesky d param:
$.ajax({ type: "POST", url: 'http://www.example.com/', contentType: 'application/json; charset=utf-8', data: '{name: "' + vName + '", target: "' + vTarget + '", phone: "' + vPhone + '", timeframe: ' + true + '}', dataType: 'json', success: function (msg) { jsonMsg = eval(msg.d); alert(jsonMsg.status); alert(jsonMsg.message); }, error: function (xhr, msg) { } });
source share