2011-09-16 12 views
0

他のドメイン名からPHPファイルを取得するのにAJAXを使用しています。jQuery .GETまたは.POSTが別のドメインからファイルを呼び出してIE上で動作しない

実際、jQuery関数をインストールしたドメインはPHPのメール送信機能をサポートしていないため、メールを送信するために外部Webサーバーを使用しなければなりませんでした。

if(hasError == false) { 

     var referenteVal = $("#referente").val(); 
     var cittaVal = $("#citta").val(); 
     var provinciaVal = $("#provincia").val(); 
     var offertaVal = $("#offerta").val(); 
      $.get("http://externaldomain.com/send_mail.php", 
       { nome: emailToVal, email: emailFromVal, telefono: telefonoVal, referente: referenteVal, citta: cittaVal, provincia: provinciaVal, commento: messaggioVal, offerta: offertaVal}, 
        function(data){ 
        if(data=='errore') { 
         alert('ERRORE'); } 
         else{ 
         alert('Grazie! Messaggio inviato. La ricontatteremo il prima possibile.'); 
         $.fancybox.close(); 
         } 
        } 
       ); 

今、このコードは、すべてのブラウザではなく、IEで正常に動作します:

これは、私はjQueryを使ってやっていることです。

実際、IEでは、jQueryコードのアクセス拒否エラーが発生します。

どうすれば修正できますか?

何が問題ですか?

IEが私に別のドメイン名へのGETリクエストを許可しない理由は何ですか?

ありがとうございます!

+2

これは他のブラウザでも有効ですか?それはしないでください。 http://en.wikipedia.org/wiki/Same_origin_policy –

+0

はい、Firefox、Safari、さらには一部のIEでもうまく動作します。しかし、私のクライアントの一人ではない! –

+0

インターネットオプション - >セキュリティタブ - >カスタム設定 その他の下の "ドメイン間のデータソースへのアクセス"を有効にする – Bruce

答えて

0

あなたが別のドメインへの呼び出しあなたが$.ajax()を使用してjsonptruedataTypeからcrossDomainを設定する必要がありますようにしたい場合は、私は思います。

関連する問題