0

aspx ページに iframe があります。

<iframe style="width: 100%;" src="" scrolling="auto" id="reportFrame" runat="server">
                                            </iframe>

私が使用している JavaScript は以下のとおりです」

 <script type="text/javascript">
function getElement(aID) {
    return (document.getElementById) ? document.getElementById(aID) : document.all[aID];
}

function getIFrameDocument(aID) {
    var rv = null;
    var frame = getElement(aID); 
    // if contentDocument exists, W3C compliant(e.g.Mozilla)
    if (frame.contentDocument)
        rv = frame.contentDocument;
    else // bad Internet Explorer  ;)
        rv = document.frames[aID].document;
    return rv;
}

function adjustMyFrameHeight() {
    var frame = getElement("reportFrame");
    var frameDoc = getIFrameDocument("reportFrame");
    alert(frameDoc);
    frame.height = frameDoc.body.offsetHeight + 15;
        }

</script>

しかし、クエリ文字列から src を取得するため、.cs ページに src のケースがあるため、コードは次のようになります。

  case "Case1":
                reportFrame.Attributes["src"] = "acd.aspx";
                reportFrame.Attributes["height"] = "355px"; //giving iframe height as script now working.

ページの読み込み中:

 this.reportFrame.Attributes.Add("onload", "adjustMyFrameHeight();");

runat="server" を使用しているため、ページの読み込みでスクリプトを指定しましたが、スクリプトは現在も機能しています。何か助けはありますか?

4

1 に答える 1

0

スクリプトを段階的にデバッグした後、フレームのIDを取得するには、マスターページのコンテンツプレースホルダーに継承されたID全体または完全なIDを指定する必要があるため、ID全体を指定する必要があるという回答が得られました。 。

于 2013-02-13T04:37:47.803 に答える