jquery UI ダイアログを使用して ASP.NET Web サイトのデータ行を変更しています。ダイアログを開くときに、下にあるフォームにダイアログを追加すると、ポストバックを使用できるようになります。$('#' + id).parent().appendTo($("form"));
しかし、ダイアログのプロパティを設定するmodal: true
と、背景が灰色になるだけでなく、ダイアログも灰色になり、アクセスできなくなります。
を削除する$('#' + id).parent().appendTo($("form"));
と、想定どおりに機能しますが、ポストバックを使用できません。
私は何か間違ったことをしていますか、それともこれを機能させるためのポイントを逃していますか?
.aspx の上にある Javascript
<script type="text/javascript">
$(document).ready(function () {
$('#workDialog').dialog({
autoOpen: false,
draggable: true,
resizable: false,
width: 800,
height: "auto",
modal: true
});
});
function showDialog(id) {
$('#' + id).parent().appendTo($("form"));
$('#' + id).dialog("open");
}
function closeModalDiv(id) {
$('#' + id).dialog("close");
}
</script>
ダイアログを含む div
<div id="workDialog" title="Basic dialog">
<asp:UpdatePanel ID="upWorkDialog" runat="server" UpdateMode="Conditional"> <ContentTemplate>
<table id="Table1" class="item">
<tr>
...
</tr>
<tr>
<td><asp:TextBox ID="txt...></asp:TextBox></td>
<td><asp:TextBox ID="txt...></asp:TextBox></td>
<td><asp:TextBox ID="txt...></asp:TextBox></td>
<td><asp:TextBox ID="txt...></asp:TextBox></td>
</tr>
</table>
<asp:Label ID="lblWorkEditError" runat="server" Text=""></asp:Label>
<asp:Button ID="btnSave" runat="server" Text="Gem" OnClick="btnSave_Click" />
<asp:Button ID="btnCancel" runat="server" Text="Annuller" OnClientClick="javascript:closeModalDiv('workDialog');" />
</ContentTemplate></asp:UpdatePanel>
</div>