私は、jqueryダイアログにpdfを表示し、pdfがIframeにあるasp.net Webアプリに取り組んでいます。私のコードは
if (int.Parse(Request.QueryString["option"].ToString()) == 0)
{
showPDF(DocumentId, perId);
mediaRep.MediaViewLog(memberId, DocumentId);
litScript.Text = "<script>$(function(){$( '#dialog' ).dialog( 'destroy');$(\"#showPdf\").dialog({height: \"auto\",width:\"auto\",modal: true ,buttons:{OK: function () {$(this).dialog(\"close\");window.location=\"PdfSearch.aspx\"}},close:function(){closeDialogPer(\"" + perId + "\");window.location=\"PdfSSearch.aspx\"}});});</script>";
}
publicvoid showPDF(Guid DocumentId, int perId)
{
litObj.Text = "<iframe type=\"application/pdf\" class=\"noprint pdfPreviewSettings\" src=\"/Search/GetPdfFile.ashx?MediaId=" + DocumentId + "&FileType=Document" + "&PerId=" + perId +
"\" onclick=\"disableRightClick();\" width=\"1150\" height=\"750\" ><strong class=\"pdfError \">Please contact your system administrator for installation of adobe acrobat reader.</strong></iframe>";
}
問題は、pdf がダイアログに表示されている場合、iframe の Web ハンドラーが 2 回呼び出され、ダイアログ ハンドラーなしで 1 回呼び出されていることです。