Скачать и загрузить файл HTML в iFrame - PullRequest
0 голосов
/ 05 февраля 2019

Я пытаюсь создать средство просмотра файлов / папок и скачаю, где я буду показывать сетевой общий каталог на веб-странице, и он будет показывать все содержимое общего ресурса.Если это файл в формате pdf, xls или doc, он будет загружен, а если его HTML, то он отобразится в iFrame на странице.

Я выполнил первое (загрузка файлов), но не смогсделать 2-ю часть;показывая файл HTML в iFrame.

Когда я щелкаю HTML-файл, он загружается, как и другие файлы, и я не уверен, как загрузить не HTML, а показать на экране.

Идея состоит в том, чтобы показать каталог в виде базы знаний, в которой размещены документ или страницы с часто задаваемыми вопросами.

Это мой код для скачивания.

Javascript

 $('#container_id').fileTree({
    root: '<network path to load files from>',
    expandSpeed: 1000,
    collapseSpeed: 1000,
    multiFolder: true
}, function(file) {

    $("#iframe").attr("src", "/dl.aspx?file=" + file);
    $('#iframe').load();
});

HTML

<div class="example">
    <h2>File List</h2>
    <div id="container_id" class="demo"></div>
    <iframe id="iframe" style="display:none;"></iframe>
</div>

CS

if (Request.QueryString["file"] != null)
{
    string actualFilePath = Request.QueryString["file"].ToString();
    HttpContext.Current.Response.ContentType = "APPLICATION/OCTET-STREAM";
    string filename = Path.GetFileName(actualFilePath);
    String Header = "Attachment; Filename=" + filename;
    HttpContext.Current.Response.AppendHeader("Content-Disposition", Header);
    HttpContext.Current.Response.WriteFile(actualFilePath);
    HttpContext.Current.Response.End();
}

1 Ответ

0 голосов
/ 05 февраля 2019

Может быть, вы не можете использовать это $("#iframe").attr("src", "/dl.aspx?file=" + file); для файла HTML.Делая это, вы вызываете файл dl.aspx, который «хочет» загрузить файл.

Вместо этого выполните проверку:

  • , если файл <> HTML,затем сделайте $("#iframe").attr("src", "/dl.aspx?file=" + file);

  • если = HTML сделайте $("#iframe").attr("src", "file_path/my-html-file.html");

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...