Solución:
Solo adivina que significa la variable json
contener después
var json = Sys.Serialization.JavaScriptSerializer.serialize(obj);?
Si es un objeto json válido como {'foo':'foovalue', 'bar':'barvalue'}
entonces jQuery podría no enviarlo como datos json, sino serializarlo a foor=foovalue&bar=barvalue
así obtienes el error "Invalid JSON primitive: foo"
En su lugar, intente configurar los datos como una cadena
$.ajax({
...
data: "{'foo':'foovalue', 'bar':'barvalue'}", //note the additional quotation marks
...
})
De esta manera, jQuery debe dejar los datos en paz y enviar la cadena como está al servidor, lo que debería permitir que ASP.NET analice el lado del servidor json.
Utilizando
data : JSON.stringify(obj)
en la situación anterior habría funcionado, creo.
Nota: Debe agregar la biblioteca json2.js, todos los navegadores no admiten ese objeto JSON (IE7-) Diferencia entre json.js y json2.js
está funcionando algo como esto
data: JSON.stringify({'id':x}),
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)