Selenium IDE - 由于字符串中的撇号,“执行脚本”中的变量无法使用

Posted

技术标签:

【中文标题】Selenium IDE - 由于字符串中的撇号,“执行脚本”中的变量无法使用【英文标题】:Selenium IDE - variable unusuable in "execute script" due to apostrophe in the string 【发布时间】:2021-12-26 23:19:00 【问题描述】:

我使用 Selenium IDE 浏览器扩展。它使用“store”将 html 元素的文本值存储在变量中。不幸的是,这个 HTML 元素的值有一个撇号 '。结果,当我调用“执行脚本”来处理字符串时,例如“return $a.length”,这会失败。这是因为 $a 像 C 预处理器一样被替换为它的值——实际上是被替换而不是复制它的值。莫名其妙地,在 JS 中 "'".length == 1 可以正常工作,而 "return $a.length" 则不能。 "return "$a".length" 或 "return '$a'.length" 或 "return '$$a'.length" 也不行。

如何正确使用execute script 中的JS 中包含'stored 变量的值?

相关:https://github.com/SeleniumHQ/selenium-ide/issues/543

【问题讨论】:

【参考方案1】:

我通过使用“执行脚本”找到该元素并在存储元素值之前用其他东西替换撇号来解决它

【讨论】:

以上是关于Selenium IDE - 由于字符串中的撇号,“执行脚本”中的变量无法使用的主要内容,如果未能解决你的问题,请参考以下文章

忽略正则表达式中的撇号[重复]

XML 字符串文件中的撇号

将 ' 转换为 PHP 中的撇号

前面没有\的撇号

XPath 查询中的撇号 (')

忽略包含中的撇号