1

我在尝试发出 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,只是使用 text/html,所以我的下一步是什么来实现这一点。因为我在其他所有浏览器上都有这个工作.. 这是一个语法错误,我真的需要这个 If 语句吗?请帮忙。

4

1 回答 1

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;}
于 2013-10-10T13:26:17.593 回答