2014-09-25 3 views
0

У меня есть всплывающее окно для отображения pdf .. но мне нужно поместить кнопку asp в всплывающее окно, попробовав следующий код, но не смог найти решение .. может любой разрешает это?с кнопкой asp назад в всплывающем окне для отображения pdf

enter code here 
    <asp Page attributes> 
............... 
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
</head> 
<body> 


<br /> 
    <form id="form1" runat="server"> 
    <div> <asp:Button ID="dd" runat="server" OnClick="Backonclick" Text="back"/> 
    </div> 
    <div></div> 
    </form> 
</body> 
</html> 

on page load event 
dd.Visible = true; 
     string path = Request.QueryString["val"].ToString(); 
     string extention = Path.GetExtension(path); 
     int len = extention.Length - 1; 
     string extwithoutdot = extention.Substring(1, len); 

     if (extwithoutdot.Equals("JPG") || extwithoutdot.Equals("jpg") || 
      extwithoutdot.Equals("jpeg") || extwithoutdot.Equals("JPEG")) 
     { 
      extwithoutdot = "jpeg"; 
........... 
+0

Как это PDF включены в это окно? –

+0

Путь получается из родительского окна и отображается во всплывающем окне, используя следующий код: if (buffer! = Null) { if (filetype.Equals ("PDF")) { Response.ContentType = "application /" + extwithoutdot; } else { Response.ContentType = "image /" + extwithoutdot; } Response.AddHeader («длина содержимого», buffer.Length.ToString()); Response.BinaryWrite (buffer); ' – user3781993

ответ

0

Проблема в том, что вы смешиваете два отдельных типа документов; PDF является одним типом загрузки, а HTML - другим. К сожалению, одна загрузка не может быть обоим, и вы не можете переключать типы документов на части и ожидать, что браузер обработает их.

Простейшим решением для вас является объединение этих двух компонентов на стороне клиента. Загрузите свое всплывающее окно как HTML-страницу (сгенерированную ASP.NET, если хотите) и включите в нее ссылку IFRAME, ссылающуюся на ваш сценарий генерации PDF; что-то в виде:

<html> 
    <body> 
     <a class='button' href="javascript:window.close()">Close</a> 
     <iframe src="generatePdf.aspx" height="300" width="300" /> 
    </body> 
</html> 
+0

Я пробовал.Но кнопка не видна. :( – user3781993

+0

Это, вероятно, потому, что я пропустил символ цитаты! Редактировал, чтобы исправить это. –

-1

я получил решение

<form id="form1" runat="server"> 

<iframe src="Copy (2) of DisplayPdf.aspx" width="1000" height="400"> 

</iframe> 

<iframe src="Copy of DisplayPdf.aspx" width="100" height="200"> 

</iframe> 
    </form> 
+1

Вы должны объяснить, как это отвечает на вопрос. Как я вижу, это не так. –