【问题标题】:adjust iframe height based on number of record in gridview根据gridview中的记录数调整iframe高度
【发布时间】:2015-07-01 17:29:01
【问题描述】:

我有一个包含 iframe 的 jquery 对话框。

iframe 包含 asp.net 网格视图。它可以是 0、1 或多个。

如果为 1,则 iframe 应调整为一条记录的高度。如果有两个,将大小调整为两个,依此类推。当然,有一个限制。目前,我想显示 10 条没有滚动条的记录。如果有 10 条记录,滚动条。对于初学者,我假设每条记录占用一行(它可以占用多行,但现在,我只想让它适用于一个简单的案例) 有各种资源可以解决此问题。很多人建议最小高度

http://forums.asp.net/t/1923309.aspx?+div+height+abject+dynamically+based+on+Gridview+

但是,我尝试了这种方法,但它不起作用

我的理解是如果只有一条记录,高度会调整为19px,高度会根据gridview调整。如果超过 10 条记录,高度为 190px 并显示滚动条。

我没有得到我想要的结果。即使只有一条记录,高度也始终为 150px

如您所知,高度不会缩小到 19 像素。

我需要做的其他事情

另外,有些人建议动态调整 iframe 的大小。我想避免那个。如果我能用简单的 CSS 完成,那就太好了。当然,如果没有其他选择,我不排除 javascript。但是,很多人提到 min-height 应该可以解决问题。如果使用 javascript 来调整大小,可能会有更多的编码和调试

谢谢

【问题讨论】:

    标签: css asp.net iframe gridview dialog


    【解决方案1】:

    我今天也遇到了同样的问题。

    网络上流传着一些 CSS 解决方法,例如 thisthis,但这些“解决方案”是针对特定情况的。 最好的方法是通过 JS,就像人们向你建议的那样。代码不大,调试不会花很长时间(如果有的话)。

    只需声明一个函数:

    function resize(frame) {
        frame.style.height = frame.contentWindow.document.body.scrollHeight + 'px';
    }
    

    并将onLoad 事件添加到您的 iframe 中,如下所示:

    <iframe id="frame1" onLoad="resize(this);"></iframe>
    

    这是做什么的:当 iframe 加载内容时,框架的高度设置为加载的内容正文高度。

    【讨论】:

      猜你喜欢
      • 2012-08-03
      • 2010-12-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-13
      • 2012-05-21
      • 2012-02-27
      • 1970-01-01
      相关资源
      最近更新 更多