select中的javascript
我正在尝试使用javascript在select中设置项(在变量中我有日期) 下面是我如何尝试设置此项的select中的javascript,javascript,html,selenium,Javascript,Html,Selenium,我正在尝试使用javascript在select中设置项(在变量中我有日期) 下面是我如何尝试设置此项的 <tr> <td>select</td> <td>Recent-Year</td> <td>value=javascript{d=new Date();d.getYear()}</td> </tr> 当然,当我试着这样做的时候: <tr> <td
<tr>
<td>select</td>
<td>Recent-Year</td>
<td>value=javascript{d=new Date();d.getYear()}</td>
</tr>
当然,当我试着这样做的时候:
<tr>
<td>select</td>
<td>Recent-Year</td>
<td>value=2011</td>
</tr>
选择
近几年
价值=2011年
它起作用了
要设置此项,我必须更改此代码中的哪些内容
编辑
我不想把这个命令分成几个命令,因为在另一个测试用例中,我存储了变量birth
<tr>
<td>storeEval</td>
<td>new Date('1966,09,16')</td>
<td>dateOfBirth</td>
</tr>
仓库
新日期('1966,09,16')
出生日期
我有3个选择:出生日,出生月和出生年,我不想创建3个变量
我想在select中设置如下项:
<tr>
<td>select</td>
<td>Birth-Year</td>
<td>value =${dateOfBirth.getFullYear()}</td>
</tr>
选择
出生年份
值=${dateOfBirth.getFullYear()}
首先存储JavaScript评估(使用storeEval
),然后使用此变量作为选项值:
<tr>
<td>storeEval</td>
<td>new Date().getYear()</td>
<td>varYear</td>
</tr>
<tr>
<td>select</td>
<td>Recent-Year</td>
<td>value=${varYear}</td>
</tr>
然后,您可以根据以下内容选择选项:
<tr>
<td>select</td>
<td>Birth-Day</td>
<td>value=${day}</td>
</tr>
<tr>
<td>select</td>
<td>Birth-Month</td>
<td>value=${month}</td>
</tr>
<tr>
<td>select</td>
<td>Birth-Year</td>
<td>value=${year}</td>
</tr>
选择
出生日
值=${day}
选择
出生月份
值=${month}
选择
出生年份
值=${year}
我知道这不是理想的解决方案,但它确实有点帮助,因为您不能执行
value=javascript{…}
(我不知道,但如果其他人知道,请说)。首先存储javascript求值(使用storeEval
),然后使用此变量作为选项值:
<tr>
<td>storeEval</td>
<td>new Date().getYear()</td>
<td>varYear</td>
</tr>
<tr>
<td>select</td>
<td>Recent-Year</td>
<td>value=${varYear}</td>
</tr>
然后,您可以根据以下内容选择选项:
<tr>
<td>select</td>
<td>Birth-Day</td>
<td>value=${day}</td>
</tr>
<tr>
<td>select</td>
<td>Birth-Month</td>
<td>value=${month}</td>
</tr>
<tr>
<td>select</td>
<td>Birth-Year</td>
<td>value=${year}</td>
</tr>
选择
出生日
值=${day}
选择
出生月份
值=${month}
选择
出生年份
值=${year}
我知道这不是理想的解决方案,但它确实有点帮助,因为你不能做
value=javascript{…}
(我不知道,但如果其他人知道,请说)。是的,这很有效,谢谢你,但这不是我想要的,因为在另一个测试用例中,我存储了变量birth(newdate('1974,09,16'))我有3个选择:dayOfBirth,monthOfBirth和yearOfBirth,我不想创建3个变量。我想在select eg value=${dateOfBirth.getFullYear()}@user278618中设置项目我已经更新了答案。不幸的是,我不认为有什么办法可以满足你的要求,但我已经提供了一个解决方案,至少可以最大限度地减少你需要做的事情。@Downvoter-你为什么不投票?如果你有什么建议,请留下评论来帮助我。你的解决方案是我以前在代码中所做的。我希望还有其他更简单的解决方案。是的,这很有效,谢谢你,但我不想要,因为在另一个测试用例中,我存储了变量birth(新日期('1974,09,16')),我有3个选项:dayOfBirth、monthOfBirth和yearOfBirth,我不想创建3个变量。我想在select eg value=${dateOfBirth.getFullYear()}@user278618中设置项目我已经更新了答案。不幸的是,我不认为有什么办法可以满足你的要求,但我已经提供了一个解决方案,至少可以最大限度地减少你需要做的事情。@Downvoter-你为什么不投票?如果你有什么建议,请留下评论来帮助我。你的解决方案是我以前在代码中所做的。我希望还有其他更简单的解决办法。