首页 > 解决方案 > C# 中 java Keys.chord() 方法的替代方法是什么?

问题描述

我是 C# 新手,无法使用 Selenium Clear 命令删除一些文本框内容。在这种情况下,我在使用 Java 时尝试了以下命令。

webelement.sendKeys(Keys.chord(Keys.CONTROL,"a", Keys.DELETE)); 

现在在 C# 中,和弦命令不可用。

我已经完成了 Keys 课程,请找到链接https://seleniumhq.github.io/selenium/docs/api/java/org/openqa/selenium/Keys.html并相信 C# 没有和弦。我们是否有任何替代方法来执行相同的操作。我可以使用 JavaScript 从文本框中删除输入,但是如何在 C# 中同时按下多个键。

目前使用这种方法使用 JavaScript

    public static void clearTextboxContentUsingJS(IWebDriver driver, IWebElement element)
    {
        ((IJavaScriptExecutor)driver).ExecuteScript("arguments[0].value ='';", element);
    }

标签: c#seleniumtextbox

解决方案


您可以尝试Keys.Backspace循环按下,看看是否有帮助。

var length = element.GetAttribute("value").Length;

for (int i = 0; i < length; i++)
{
    webElement.SendKeys(Keys.Backspace);
    Thread.Sleep(100);
}

另外,我知道您已经尝试过Keys.CONTROL++ 。我过去曾尝试过此解决方案,但拆分为单独的行,因此这可能也值得尝试:"a"Keys.DELETE

webElement.SendKeys(Keys.Control + "a");
webElement.SendKeys(Keys.Delete);

推荐阅读