2011-07-19 5 views
0

私は隠されたiframeへの投稿にフォームを持っています。フォームのアクションURLは別のドメインにあります。フォームの投稿は行われますが、フォームデータは送信されないChromeで問題が発生しています。ここでChromeでiframeターゲットを使用したクロスドメインフォームの投稿

はセットアップです:

<form action="http://anotherdomain/save" method="post" target="myiframe" id="myform"> 
    <!-- standard form fields here --> 
    <button type="submit">Submit</button> 
</form> 
<iframe src="about:blank" name="myiframe" style="display: none;"></iframe> 

ユーザーがインラインフレームにそれが必要として、フォームのポスト、ボタンをクリックすると、すべてが良好であれば。しかし、jQuery検証を導入すると、Chromeでの作業が停止します。

$("#myform").validate({ 
    // various options set here 
    submitHandler: function(form) { 
     form.submit(); 
     // stuff that should happen after the form submits 
    } 
}); 

このシナリオでは、form.submit()は、データが投稿されずにフォームを送信するため、ヘッダーのみが送信されます。コンテンツの長さは常に0です。これはChrome、Firefox、IE、Operaでのみ発生します。

さらに奇妙なのは、ページに別のボタンがあり、それを次のコードでワイヤリングすると、フォームが正しく送信されるということです。

$("myotherbutton").click(function() { $("#myform").submit(); } 

なぜChromeがこのように動作するのか、また回避策があるのか​​どうかはわかりません。どんな助けもありがとう。

答えて

0

この質問は無視してください。 Chromeとイベントハンドラでは問題ではなく、イベントが呼び出される前にDOM要素を削除することに関連した問題でした。

関連する問題