在asp.net mvc应用程序中呈现iframe内部的部分视图

时间:2016-03-23 21:46:24

标签: javascript html asp.net asp.net-mvc razor

我有一个asp.net mvc应用程序,其中我有一个名为_GeoApi.cshtml的部分视图。

我需要在 iframe 中进行渲染。

<iframe src='@{Html.RenderPartial("_GeoApi");}' id='fram' ></iframe> 

我得到一个生成的HTML代码:

<iframe<script src="/Scripts/External js/jquery-1.8.2.js">
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyBCVSBoBAUjAfb-Pfx_qq0ZKUHCitbzsl4&amp;libraries=places&amp;callback=initAutocomplete" async="" defer=""></script>

//content removed for brivety

 src='' id='fram' /&gt; 

                                </iframe<script>

所以我需要知道

  1. 出现此错误的原因是什么?
  2. 如何修复我的代码?

1 个答案:

答案 0 :(得分:1)

导致错误是因为您的<script>代码中有<iframe>标记。

解决方案是简单地将URL作为src提供给URL,在URL中您将呈现部分而不是尝试将内容放入iframe标记。

<iframe src='/api/geoApi' id='fram' ></iframe> 

然后创建一个具有GeoApi动作方法的ApiController,该方法呈现“_GeoApi”局部视图。