我想将变量传递给element。我的html就像
<input class="form-control" data-bind="textInput: code, attr: { id: 'myTable_code_' + $index() }" type="text" id="myTable_code_0" style="">
我声明了
这样的元素 [FindsBy(How = How.Id, Using = "myTable_code_" + myVariable), CacheLookup]
private HtmlElement _Code;
但是偏离路线不起作用。有谁知道如何将varialbe传递给属性。我正在使用c#
答案 0 :(得分:1)
您不能这样做,注释是存储在类文件中的常量值。您无法在运行时计算它们。
以下应工作:- 使用=“ myTable_code_0”)
看到Can the annotation variables be determined at runtime吗?
尽管它是针对Java的,但我认为它也适用于C#。
答案 1 :(得分:0)
不是使用find by,而是字符串格式?您将需要根据您的设置进行一些调整,但是根据您要使用的值,您可以执行以下操作...
string myVariable = "blah";
string value = Browser.FindElement_byXPath(string.Format("//input[@id='myTable_code_0']//h4[contains(text(), '{0}')]", myVariable)).Text;