Dobrý večer,
potřeboval bych prosím poradit. Pomocí AJAX odesílám přes JSON (v případě IE prohlížeče) data jako parametry přes GET do Controlleru a zpracovávám je a return mi vrací nějaký string, který vypíši do HTML stránky. To není problém.
Problém je v jiných prohlížečích, kde je potřeba použít JSONP. Vše mi funguje, až na vracení stringu(objektu), který se samozřejmě vrátí v JSON a já nevím, jak jej vrátit v JSONP a vypsat ho přes AJAX do HTML.
Funkční řečení pro IE s použitím JSON:
public JsonResult MojeFce(string aa, string bb)
{
/* nějaký kód */
return Json(new { Message = "Moje zpráva." }, JsonRequestBehavior.AllowGet);
}
var d = new Date();
$.ajax({
type: "GET",
url: "https://000.000.000.000/Slozka/MojeFce",
case: false,
crossDomain: true,
data: "aa=" + $("input[name=aa]").val() +
"&bb=" + $("input[name=bb]").val() +
"&callback=" + d.getTime(),
dataType: "json",
contentType: "application/json; charset=utf-8",
success:
function (data)
{
$('.odeslano').html(data.Message);
$('.odeslano').css("display", "block");
},
error: function (XMLHttpRequest, textStatus, errorThrown) { },
});
Pro odeslání v JSONP (funkční ve všech prohlížečích) stačí v JS upravit "dataType".
P.S.: Google mi nějak nepomohl
Omlouvám se za případně špatné zvolenou kategorii dotazu.