getXDomainRequest不能在IE上工作,但可以在任何其他地方工作

时间:2012-06-05 11:27:18

标签: javascript internet-explorer xdr

我有这个函数从外国网站返回一些XML数据:

function sendData()
{
        var dev_statut = jQuery("select[name='statut']").val();
        var dev_fdpaysid = jQuery("select[name='pays']").val();
        var dev_fddeffet = jQuery("input[name='date_effet']").val();
        var dev_fdnbadu = jQuery('select[name="nb_adultes"]').val();
        var dev_fdnbenf = jQuery('select[name="nb_enfants"]').val();

        var date_naiss_a_val = jQuery("input[name^=date_naissance_a]").map(function() {        
        var dev_date_naiss_a = 'dev_fadnaiss_';
        return dev_date_naiss_a + this.id + '=' + this.value; 
        }).get().join('&');

         var date_naiss_e_val = jQuery("input[name^=date_naissance_e]").map(function() { 
         var dev_date_naiss_e = 'dev_fadnaiss_';
         return dev_date_naiss_e + this.id + '=' + this.value; 
         }).get().join('&');

        var xdr = getXDomainRequest();
        xdr.onload = function() 
        {
                alert(xdr.responseXML);

                var xml = xdr.responseXML; 
                var prod = xml.documentElement.getElementsByTagName("produit");

                var proddata = [];

                proddata.push('<ul>');

                var len = prod.length;
                for (var i = 0; i < len; i++) {

                var nomprod = xml.getElementsByTagName('nomprod')[i].firstChild.nodeValue;
                var url = xml.getElementsByTagName('url')[i].firstChild.nodeValue;
                var desc = xml.getElementsByTagName('desc')[i].firstChild.nodeValue;
                var texte = xml.getElementsByTagName('texte')[i].firstChild.nodeValue;

                proddata.push("<li><div class='resultat_produit'>" + "<h1>" + nomprod + "</h1>" + "<p class='from_devis_desc'>" + desc + "</p>" + "<p class='form_devis_texte'>" + texte + "</p>" + "<a href='" + url + "'class='btn_url'>Faire un devis</a>" + "</div></li>");
                }

                proddata.push('</ul>');
                jQuery('#mydiv2').append(proddata.join("\n"));

                jQuery('.resultat_produit a').click(function(e)
                {
                        e.preventDefault();

                        var href = jQuery(this).attr('href');

                        jQuery('#myDiv').empty();
                        jQuery('#myDiv').append('<iframe src="'+ href +'" scrolling="auto" width="960" height="100%"></iframe>');
                });
        }
        xdr.open("GET", "http://www.MYURL.fr/page.php?dev_statut="+ dev_statut +"&dev_fdpaysid="+ dev_fdpaysid +"&dev_fddeffet="+ dev_fddeffet +"&dev_fdnbadu="+ dev_fdnbadu +"&dev_fdnbenf="+ dev_fdnbenf +"&"+ date_naiss_a_val +"&"+ date_naiss_e_val +"");
        xdr.send();
} 

它适用于任何主流浏览器(Chrome,FF等),但不适用于...... IE!我打开了控制台,它说:“DocumentElement未定义......”

我很累,无法解决这个问题,任何帮助都会非常感激!!

0 个答案:

没有答案
相关问题