我有一個觀點,有一些下拉,可以讓你選擇一些調查。選中後,將調查加載到iframe中。加載視圖到它工作正常,但我試圖顯示統計(摘要)關於此調查旁邊的iframe。但是,由於我將視圖返回給iframe,viewbag,viewdata或tempdata不會返回任何東西(想象它對iframe的影響),但我需要它將信息返回到整個視圖。不知道如何做到這一點..任何幫助,非常感謝。由於將視圖返回給MVC4中的iframe時,viewbag,viewdata或tempdata不會將信息傳遞迴整個視圖。
我的觀點:
@using (Html.BeginForm("Survey", "Moderator", FormMethod.Post, new { target = modFrame" }))
{
<div id="jWizard" class="jWizard wizardStyle">
<table class="moderatorPage">
<tr>
<td > </td>
<td> </td>
<td> </td>
<td> </td>
<td>Study: @Html.DropDownList("SurveyID", Model.Surveys, new { onchange = "LoadGroups();", @class = "dropDownMain" })</td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td>Group: @Html.DropDownList("GroupID", Model.UserGroups, new { onchange = "LoadUsers();", @class = "dropDownMain" })</td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td>User: @Html.DropDownList("UserID", Model.Users, new { @class = "dropDownMain" })</td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td><input type="submit" value="Start" /></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td><iframe id="modFrame" name="modFrame" style="width:100%; height:1000px; border:0px"></iframe></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>@TempData["test"]</td>
<td>@ViewBag.test</td>
<td>@ViewData["test"]</td>
<td> </td>
<td> </td>
</tr>
</table>
</div>
}
而且在我的控制器:
public ActionResult Survey(int SurveyID, string GroupID, string UserID)
{
ViewBag.UserID = UserID;
if (SurveyID != 0)
{
TempData["test"] = "test1";
ViewData["test"] = "test2";
ViewBag.test = "test3";
var userTypeRepo = new UserTypeRepository(new UnitOfWork());
ViewBag.UserType = userTypeRepo.Get(user.UserTypeID).Description;
var repo = new SurveyRepository(new UnitOfWork());
var survey = repo.Get(SurveyID, "MasterPages,MasterPages.MasterTickets");
return View(survey);
}
else
{
return View("Error", (object)"Survey ID is zero");
}
}
感謝您的快速響應!我一直在這裏找到答案,但從來沒有發佈一個,但哈哈。無論如何,對於我在做什麼,我不知道如何使用除iframe之外的其他任何東西。我正在創建一個管理員視圖,允許您查看用戶或整體迴應。我需要能夠加載具有玩家功能的任何特定調查(向後,向前,頁面跳轉)並顯示統計數據。我討厭iframe,但不知道更好的方法。 – Luke