【问题标题】:ASP.NET's framework javascript won't let me render a raw HTML IFRAMEASP.NET 的框架 javascript 不允许我呈现原始 HTML IFRAME
【发布时间】:2011-10-05 04:20:52
【问题描述】:

我有一个 UserControl,它不是将标签放入其 ascx 标记文件,而是在其代码隐藏中覆盖 render() 以写出使用 XSLT 从 XML 生成的 XHTML。

我想渲染出一个 iframe(作为解决 IE6 的 SELECT z-index 错误的技巧),但是一旦我编辑 xslt 以渲染一个 iframe,ASP.NET 的 ScriptResource.axd 输出中就会出现 javascript 错误(但是不在 Firefox 中):

错误:Sys.ArgumentNullException:值不能为空。参数名称:panelsCreated[0]

我在 VS2010 中调试时显示的行是if (e) throw e;

$type = Sys.WebForms.PageLoadedEventArgs = function PageLoadedEventArgs(panelsUpdated, panelsCreated, dataItems) {
    /// <summary locid="M:J#Sys.WebForms.PageLoadedEventArgs.#ctor">The arguments for the PageRequestManager's pageLoaded event. The pageLoaded event is raised after the DOM has been updated.</summary>
    /// <param name="panelsUpdated" type="Array">An array of UpdatePanels that were updated.</param>
    /// <param name="panelsCreated" type="Array">An array of UpdatePanels that were created.</param>
    /// <param name="dataItems" type="Object" mayBeNull="true"></param>

    var e = Function._validateParams(arguments, [
        {name: "panelsUpdated", type: Array},
        {name: "panelsCreated", type: Array},
        {name: "dataItems", type: Object, mayBeNull: true}
    ]);

    if (e) throw e;

    Sys.WebForms.PageLoadedEventArgs.initializeBase(this);
    this._panelsUpdated = panelsUpdated;
    this._panelsCreated = panelsCreated;
    this._dataItems = dataItems || new Object();
}

ASP.NET 在生成纯 HTML IFRAME 元素时是否存在问题?

【问题讨论】:

  • 您的&lt;iframe&gt; 元素是否正确关闭,即&lt;iframe&gt;&lt;/iframe&gt; 而不是&lt;iframe /&gt;
  • 是的,有一个单独的结束标签。我已经设置了 id 和 src 属性。

标签: javascript asp.net iframe internet-explorer-6 ascx


【解决方案1】:

将脚本管理器的脚本模式更改为 release 对我有用

在页面的 OnInit 方法中我添加了这一行

ScriptManager.GetCurrent(Page).ScriptMode = ScriptMode.Release;

【讨论】:

    【解决方案2】:

    我通过在&lt;iframe&gt;&lt;/iframe&gt; 中添加文本解决了这个问题。如果我有用户使用不支持 iframe 的浏览器,此文本将被另一个元素覆盖!

    【讨论】:

      猜你喜欢
      • 2015-03-19
      • 1970-01-01
      • 2021-08-20
      • 2012-01-22
      • 2016-04-04
      • 2016-04-26
      • 1970-01-01
      • 2017-08-02
      • 1970-01-01
      相关资源
      最近更新 更多