如何检查iframe是否为空?

时间:2016-10-31 18:36:27

标签: javascript asp.net-mvc iframe

我有2个不同的代码。 1为null,另一个不为null。

我的代码为null:(== empty)

<div class="col-xs-6">
    <iframe style="width:868px; height:550px;" id="FileReload" src="/Account/GetPDF?NUM=101">
        <html>
            <head></head>
            <body>
                <pre style="word-wrap: break-word; white-space: pre-wrap;"></pre>
            </body>
        </html>
    </iframe>
</div>

我的代码不为空:(!=空)

<div class="col-xs-6">
    <iframe style="width:868px; height:550px;" id="FileReload" src="/Account/GetPDF?NUM=101">
        <html>
            <body style="background-color: rgb(38,38,38); height: 100%; width: 100%; overflow: hidden; margin: 0">
            <embed width="100%" height="100%" name="plugin" id="plugin" src="http://localhost:49943/Account/GetPDF?NUM=101" type="application/pdf" internalinstanceid="74" title="">
            </body>
        </html>
    </iframe>
</div>

我的控制器:

public ActionResult GetPDF(int NUM)
{
    //.Select Database
    //.
    //.
    if (reader.HasRows)
    {
        //Here passes null or not null.
        PDF = ((byte[])reader["File"]);
        return new FileContentResult(PDF, "application/pdf");
    }
}

当为null时,iframe为白色。 当不为null时,它工作正常。 (我想在布局为白色时隐藏iframe。)

看起来像这样:(iframe white)

enter image description here

当为null时,显示白色iframe宽度和高度。(如果== null - &gt;隐藏iframe)

如何使用javascript检查它是否为空?

1 个答案:

答案 0 :(得分:0)

我找到了解决方案!

$(function() {
        $('#FileReload').load(function() {            
          if($.trim($(this).contents().find("body").find('embed').length) == 0) {
            $(this).hide();
          }
        });
    });