フォームにボタンがあります。そのボタンをクリックすると、最初にサーバー上のWebページにajaxpostし、指定されたdivの内部htmlを取得し、最後にそのhtmlをjqueryuiダイアログを表示する別のdivに追加します。コードは次のとおりです。
$('#window').html(content).
dialog({
title: title,
show: 'drop',
hide: 'drop',
width: 400,
buttons: buttons,
position: { my: 'center', at: 'center', of: window }
}
);
そして、投稿されたページの div の内部 html は次のとおりです。
<div id="cardOrder" class="cardOrder-div">
<form runat="server" id="frmAjax" >
<table class="cardOrder-tbl">
......
</form>
</div>
Chrome と Opera に問題があります。ボタンを初めてクリックし、上記の html コンテンツを含む jqueryui ダイアログを表示すると、「フォーム」タグがありません。しかし、次にダイアログを表示すると、フォームタグが追加されます。フォームタグがないと送信できません。Firefox と IE にはこの問題がありません。フォーム タグは、最初のダイアログ ショーから直接追加されます。
編集:コードをデバッグして、ajax 応答から返された html コンテンツに form タグが含まれているかどうかを確認すると、そこに表示されます。しかし、コンテンツが div に追加されると、どういうわけか消えます。