我在尝试制作ajax GET请求时遇到问题。我需要弄清楚如何使用XDR将我的jquery转换为原始方法。这是我的代码。这是我想要添加的内容。我知道在哪里添加它,我只是不知道如何或在哪里放置我的所有变量。所以我拥有的东西:
$.post("post.php?"+$("#MYFORM").serialize(), {
}, function(response){
if(response==1 && codeVal == 1 && telVal == 1)
{
$("#after_submit").html('');
$("#Send").after('<label class="success" id="after_submit">Η αποστολή πραγματοποιήθηκε</label>');
change_captcha();
clear_form();
$.ajax({
type:'GET',
cache: false,
url: "web.something.gr/submit_code.php",
data:{ user: "123456", pass: "123456", source: "WEB", receipt: num, msisdn: phone},
success: function(data) {
var qsFull = "web.something.gr/submit_code.php?" + data;
var qs = URI(qsFull).query(true);
TINY.box.show({html:qs.message,animate:false,boxid:'error',top:5});
},
error: function(data) {
var qsFull = "web.mobilemedia.gr/input/microsoft/submit_code.php?" + data;
var qs = URI(qsFull).query(true);
TINY.box.show({html:qs.message,animate:false,boxid:'error',top:5});
}
});
}
else
{
$("#after_submit").html('');
$("#Send").after('<label class="error" id="after_submit">Error! in CAPTCHA .</label>');
}
});
这适用于除IE之外的所有浏览器..所以我想在那里适应它,但不知道如何:
if ($.browser.msie && window.XDomainRequest) {
// Use Microsoft XDR
var xdr = new XDomainRequest();
xdr.open("get", "someurl");
xdr.onload = function () {
var JSON = $.parseJSON(xdr.responseText);
if (JSON == null || typeof (JSON) == 'undefined')
{
JSON = $.parseJSON(data.firstChild.textContent);
}
processData(JSON);
};
xdr.send();
}
我真的不认为我使用JSON,只是文本/ html所以我的下一步是什么才能实现这一点。因为我在其他浏览器上都有这个工作..这是语法错误,我真的需要这个If语句吗?请帮忙。
答案 0 :(得分:0)
应用此代码条款; “data.firstChild.textContent”在IE中不起作用
if(isIE() && isIE() < 10) {
JSON = $.parseJSON(data.text); }
function isIE() {
var myNav = navigator.userAgent.toLowerCase();
return (myNav.indexOf('msie') != -1) ? parseInt(myNav.split('msie')[1]) : false;}