-1

ページ内の要素を識別できません。nullが表示されます。Iframe(テキストボックス)内の要素を識別したい。セレンWebドライバーを使用して要素をクリックしましたが、要素を識別できません。

1)私のHTMLコードは次のようになります

      <html>
        <head>
         <body>
         <iframe id="iframeOne">                  
             </iframe>
         </body>    
          </head>

              </html>     

2. javascriptを使用して、document.getElementById('textbox')のようなテキストボックスを識別しました。
ただし、nullを返します。

3.Seleniumwebdriverを使用してみました

  IWebElement ClickElement = Wait.Until((d) => webDriver.FindElement(By.Id(parameter1))); It gives object reference error
            ClickElement.Click();
4

2 に答える 2

3

iframeタグ内にhtmlを入れることはできません。現在のページ内に別のページをロードすることです。入力タグには、コントロールのタイプが含まれている必要があります。HTML検証エラーを確認します。

于 2012-09-25T06:46:27.360 に答える
2

ブラウザがiframeタグをサポートしていない場合にのみ、iframeタグに配置したhtmlコードが読み込まれ、表示されます。したがって、古いNetscapeナビゲーターまたはIE 4を使用していない限り、おそらく決してありません。

ロードするURLを指すiframeに属性を追加srcします。次に、この方法で内部の要素にアクセスできます。

var frame = document.getElementById('iframeOne');
var frameDocument = frame.contentDocument;
var element = frameDocument.getElementById('xxxx');

ただし、考慮すべきことが1つあります。iframecontentDocumentのsrcがクロスドメインの場合にアクセスすると、期待どおりに機能しない可能性があります。

于 2012-09-25T06:51:36.873 に答える