Asp.net mvc 3 如何将视图从控制器返回到iFrame
我是MVC 3的新手,遇到了以下情况: 首先让我解释一下如何设置我的应用程序: 所有到服务器的回发都使用jqueryajax,jqueryajax从控制器返回一个视图,该视图可以附加、前置或替换目标div 场景: 我已经到了想上传图像的地步,但不幸的是,由于jquery ajax发布,我无法在C#Asp.net mvc 3 如何将视图从控制器返回到iFrame,asp.net-mvc-3,iframe,Asp.net Mvc 3,Iframe,我是MVC 3的新手,遇到了以下情况: 首先让我解释一下如何设置我的应用程序: 所有到服务器的回发都使用jqueryajax,jqueryajax从控制器返回一个视图,该视图可以附加、前置或替换目标div 场景: 我已经到了想上传图像的地步,但不幸的是,由于jquery ajax发布,我无法在C#Request.Files中获取html的值。我知道有插件可以帮助解决这个问题,但我想自己做这件事,所以我创建了一个,然后我使用了一点javascript,并将表单发布到iframe(旧的经典做法):
Request.Files
中获取html的值。我知道有插件可以帮助解决这个问题,但我想自己做这件事,所以我创建了一个
,然后我使用了一点javascript,并将表单发布到iframe(旧的经典做法):
SACTION
参数类似于@Url.Action(“UploadFile”、“Response”)
。这一切都很好,因为它点击了控制器操作方法,然后我可以保存图像:
[HttpPost]
public ActionResult UploadFile(string ArticleID)
{
ViewBag.PreviewImage = cFileUploads.UploadFile(ArticleID, Request.Files[0]);
return View("ImagePreview");
}
我现在想返回iframe的视图(只是预览图像,然后做一些其他事情,但这不是重点)
用于预览图像的视图:
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<form action="">
<img alt="" src="@ViewBag.PreviewImage" />
</form>
</body>
</html>
问题:
不幸的是,当我在C#中返回视图(ImagePreview.cshtml)时,整个页面都被刷新了,我只想刷新iFrame。如何从控制器返回视图?解决了这个问题,我使用了一点javascript来替换iframe所在的div的内容。。。(拍我的额头)。现在一切正常:) 我将把这个问题留在这里以防万一
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<form action="">
<img alt="" src="@ViewBag.PreviewImage" />
</form>
</body>
</html>