javascript - Loathing IE and it's refusal to respond to JQuery Post -
ladies / gents:
doing $.post works fine in chrome & firefox. ie - not much...the success callback (addticketandrender()) never gets hit:
i've read needing "cache-busting" against ie post, i'm relatively new stuff don't know if that's appropriate thing try , if so, how it.
source:
function addticketandrender(incomingticket) { console.log("add , render"); alert(incomingticket); } $(document).ready(function() { console.log('ready'); // variables feed trusted ticket retrieval var trustedurl = "http://tableau.russellchristopher.org/trusted", username = "foo", serverurl = "http://tableau.russellchristopher.org/"; $.post(trustedurl, { username: username, server: serverurl, client_ip: "", target_site: "", cache: "false" }, function(response) { addticketandrender(response); }); }); little help, please?
update1: switched out ajax post: no difference. still on chrome , firefox, still dead in ie:
$.ajax( { url : trustedurl, type: "post", data : { username : username, server : serverurl, client_ip : "", target_site : "" }, cache : false } ).done( addticketandrender ); update2: integrated additional cache-busting technique. same behavior - chrome/ff works, nothing ie - using fiddler, can see post go out when running code below http://jsfiddle.net/aeqxj/3//. in ie, never happens. tested outside of jsfiddle , see same result. next step: rule out stupid ie browser settings on part testing on box haven't touched browser settings.
function addticketandrender(incomingticket){ alert(incomingticket); } $(document).ready(function() { // variables feed trusted ticket retrieval var trustedurl = "http://tableau.russellchristopher.org/trusted", username = "foo", serverurl = "http://tableau.russellchristopher.org/"; var number=math.floor(math.random()*1); $.ajax( { url : trustedurl + "?" + number, type: "post", data : { username : username, server : serverurl, client_ip : "", target_site : "" }, cache : false } ).done( addticketandrender ); }); update 4: ruled out copy of ie issue. added error trapping code post, , when running in ie, see thrown:
error: function(xhr, textstatus, error){ alert(xhr.statustext); alert(textstatus); alert(error); //output: // xhr.statustext: no transport // teststtus: error // error: no transport searching on "ie no transport jquery post" leads me here:
jquery call webservice returns "no transport" error
post indicates adding jquery.support.cors = true; should resolve issue, when do, errors returned:
//output: // xhr.statustext: error: access denied // teststtus: error // error: error: access denied
if cache: false not working you, old school way add parameter url, random number, so:
var number=math.floor(math.random()*1) $.ajax( { url : trustedurl + "?" + number, type: "post", data : { username : username, server : serverurl, client_ip : "", target_site : "" }, cache : false } ).done( addticketandrender ); this should debugging (change random number sequential). if still doesnt work remove .done , use complete i.e.
$.ajax( { url : trustedurl, type: "post", data : { username : username, server : serverurl, client_ip : "", target_site : "" }, cache : false, complete : function() { addticketandrender } }); one last thing, if doing using jsfiddle page, make sure remove console.log() code, cause ie break (it doesn't understand console.log).
Comments
Post a Comment