我正在尝试将包含 HTML 代码的字符串变量发送到位于框架内的文本框。HTML 代码如下所示:
<iframe id="rte" class="rteIfm" frameborder="0" contenteditable="" title="Description">
<html>
<head>
</head>
<body role="textbox" aria-multiline="true">
</body>
</html>
</iframe>
我尝试了两件事......首先,我尝试切换帧并使用萤火虫给我的x路径发送密钥:
driver.SwitchTo().Frame(driver.FindElement(By.Id("rte")));
driver.FindElement(By.XPath("/html/body")).SendKeys(myStringContainingHTML);
其次,我尝试将密钥发送到 ID 与框架相同的元素:
driver.FindElement(By.Id("rte")).SendKeys(myStringContainingHTML);
在这两种情况下,都发生了同样的事情:起初,字符串(包含 HTML 代码)开始按预期输入到文本框中。然后在输入大约一个标签后,浏览器开始导航到不同的页面。我去了谷歌,开始在搜索框中输入内容,然后搜索字符串中的 HTML 代码块。
对我来说似乎很奇怪,我哪里出错了?