我有一个索引页面index.cshtml.Which显示一个文档文件列表,旁边是一个iframe。我想在点击列表中的任何一个时将文档文件显示到iframe中。但是当我点击任何一个列表时文件清单显示另一页。
索引
<table>
@*<th>File Name</th>*@
@foreach (var file in Model)
{
<li>
@*<a href="#"id="fileId" data-id="@file.Id">@file.Name</a>*@
<a href="@Url.Action("GetFile", "Document", new { Id=file.Id})">@file.Name</a>
</li>
<br />
}
</table>
<div id="frame" class="panel-default" >
<div id="frame" class="panel" >
<iframe src="@Url.Action("GetFile", "Document", new { Id=@Model.First().Id})" width="870px" height="450px"></iframe>
</div>
</div>
控制器
[HttpGet]
public FileStreamResult GetFile(int? Id)
{
if (Id == null)
Id = 4;
string fileName = _manager.FileNameSearch(Id);
string filePath = ConfigurationManager.AppSettings["FilePath"] + fileName;
FileStream fs = new FileStream(Server.MapPath(filePath), FileMode.Open, FileAccess.Read);
return File(fs, "application/pdf");
}
答案 0 :(得分:0)
<div id="frame" class="panel">
<iframe id="iframe" src="@Model.Url" width="870px" height="450px" name="iframe"></iframe>
</div>
<li>
<a href="@Url.Action("GetFile", "Document", new { Id = Model.Id })" target="iframe">@Model.Name</a>