#2 Happy
Jak píše null_while: hledat v řetězci;)
Příspěvky odeslané z IP adresy 82.142.123.–
stačilo smazat čárku a jede to i v IE7 a dokonce IE6
error: function (XMLHttpRequest, textStatus, errorThrown) { },
po editaci:
error: function (XMLHttpRequest, textStatus, errorThrown) { }
Dobrý den,
prosím o radu.
Následující kódy jsou funkční v IE9, FF, Chrom a Safari.
Ale v Opeře se nevrátí výsledek a v IE8 se parametry odesílají bez url a navíc se neprovede validace. (obnoví se stránka a v adresním řádku zůstane špatná adresa)
Hlavně to potřebuji rozchodit v IE8.
špatně:
http://mojeadresa.cz/soubor.html?…
správně:
http://jinaadresa.cz/Form/Zpracuj/?…
JS
$(document).ready(function () {
// validate
$("#stiznost").validate({
rules: {
email: { required: true, email: true, maxlength: 50},
predmet: { required: true, maxlength: 50 },
text: { required: true, maxlength: 300 }
},
submitHandler:function(form) {
SubmittingForm();
}
});
// sending
function SubmittingForm() {
var d = new Date();
jQuery.support.cors = true;
$.ajax({
type: "GET",
url: "https://000.000.000.000/Form/Zpracuj",
case: false,
crossDomain: true,
data: "mail=" + $("input[name=email]").val() +
"&predmet=" + $("input[name=predmet]").val() +
"&text=" + $("textarea[name=text]").val() +
"&breakcache=" + d.getTime(),
dataType: "jsonp",
jsonpCallback: "myFunct",
contentType: "application/json; charset=utf-8",
success:
function myFunct(data)
{
alert("ok");
},
error: function (XMLHttpRequest, textStatus, errorThrown) { },
});
};
});
Děkuji
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.