我正在开发一个 asp.net Web 应用程序,其中我在 jquery 对话框中显示 pdf,而 pdf 在 Iframe 中。我的代码是
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 处理程序调用了两次,而没有对话框处理程序调用了一次。使用 jquery 对话框调用处理程序的原因是什么以及如何修复它。