gpt4 book ai didi

selenium - 使用 SendKeys 向 IE 11 发送 '@' 特殊字符

转载 作者:行者123 更新时间:2023-12-05 08:08:44 29 4
gpt4 key购买 nike

我正在尝试使用 Internet Explorer 11 中的 SendKeys 方法将特殊字符发送到文本框。我在其他浏览器中尝试发送特殊字符时没有遇到这个问题,但 Internet Explorer 发送的字符完全不同试图发送特殊字符。

大多数特殊字符都有效(例如 !#()$%&/),但像 @{}§ 这样的字符不起作用,而不是那些字符,而是在文本框中写入诸如 vbnm 之类的字符。这些字母代表与键 Alt Gr 组合创建特殊符号的键(例如 Alt Gr + v = @,Alt Gr + b = {,Alt Gr + n = },Alt Gr + m = §)。

我尝试使用 Action 对象通过 KeyDown 方法发送键,但也没有成功,当尝试写入其中包含“@”的字符串时(例如 username@mail.com),特殊符号被替换为字母“v”(用户名vmail.com)。我还尝试使用与“@”符号等效的 ASCII,但我没有使用特殊字符,而是在文本框中放置了“64”文本。

private static string UserName
{
get { return Browser.GetSingleElement(Login.txtUserName).GetAttribute("value"); }
set
{
if (value == null) return;
var domElement = Browser.GetSingleElement(Login.txtUserName);
Actions action = new Actions(Browser._driver);
action.MoveToElement(domElement);
action.Perform();
domElement.Clear();
action.KeyDown(Keys.LeftAlt);
action.Perform();
action.SendKeys(Keys.NumberPad6);
action.SendKeys(Keys.NumberPad4);
action.Perform();
//action.MoveToElement(Browser.GetSingleElement(Login.txtUserName)).Click().KeyDown(Keys.LeftAlt).SendKeys("64").Perform();
if (!Browser.SendKeys(Browser.GetSingleElement(Login.txtUserName), "@{}§~$%&()="))
throw new Exception("Failed to send keys on Login.txtUserName DOM element.");
}
}

当发送“@{}§~$%&()=”字符串到文本框时,我将其作为输出。

Username output when sending "@{}§~$%&()=" string to the textbox

最佳答案

string a = "@{}§~$%&()=";
string b = WebUtility.HtmlDecode(a);

关于selenium - 使用 SendKeys 向 IE 11 发送 '@' 特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46073463/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com