2011-12-03 34 views
8

標準のJQuery .ajaxコールを作成しています。すでに他のブラウザで動作させるためにフープを飛ばしましたが、ちょうどIE9(と低い、私は確信している)に立ち往生。ページcanada.example.com/registrationはjQueryのアヤックスを使用して提出された登録フォームを、含まれていますIE9「no transport」エラー、Firefox/Chromeが動作し、リクエストがクロスサイトではありません

jQuery.ajax({ 
    url: 'http://canada.example.com/registration.php', 
    type: 'POST' 
}); 

注POST要求がhttp://canada.example.com/registration.phpに行われるので、私は、クロスサイトリクエストをしていませんよ。

これはFirefoxとChromeで動作するようになりましたが、IE9は要求を行おうとしなかったため「転送なし」のエラーを返します。どのようにこれを修正するための任意のアイデア?私はいくつかの長さを試して、これをクロスオリジンのリクエストではなくしていますが、IE 9はそれがまだそれと考えるようです。

+0

修正済みです。私は完全修飾URL(registration.phpではなくhttp://canada.example.com/registration.php)を渡していましたが、クロスドメインフラグをyesに設定しました。 「registration.php」に送信され、クロスドメインフラグをNOに設定して動作するように、完全な品質名を削除しました。 –

+0

あなたはあなたのコメントを答えとして書いて、それを受け入れられた答えとしてマークできますか? – Ivan

+0

[jQuery Call to WebService]がおそらく "No Transport"エラー(http://stackoverflow.com/q/5241088/90527)を返すかもしれませんが、その質問には十分に明確に述べられていません。 – outis

答えて

7

修正済みです。私は完全修飾URL、つまりregistration.phpの代わりにcanada.example.com/registration.phpを渡していましたが、クロスドメインフラグをyesに設定しました。完全な品質名を削除したので、単に「registration.php」に送信され、クロスドメインフラグがNOに設定され、機能します。

jQuery.ajax({ 
    url: '/registration.php', 
    type: 'POST', 
    crossDomain: false 
}); 
+1

+1あなたは私の問題をちょうど解決しました。ありがとう! –

+0

これは助けてくれてうれしい! –

関連する問題