我有一个包含多个列的表,其中数据是从数据库中填充的。这些列可以有下拉列表、文本字段、复选框以及简单的文本。我需要写下一个函数,它本质上将返回表列中存在的数据。
这是一个关于如何在网页中命名标签的示例。[表的 CSS 归功于 w3schools]。
<html>
<head>
<style type="text/css">
#customers
{
font-family:"Trebuchet MS", Arial, Helvetica, sans-serif;
width:100%;
border-collapse:collapse;
}
#customers td, #customers th
{
font-size:1em;
border:1px solid #98bf21;
padding:3px 7px 2px 7px;
}
#customers th
{
font-size:1.1em;
text-align:left;
padding-top:5px;
padding-bottom:4px;
background-color:#A7C942;
color:#ffffff;
}
#customers tr.alt td
{
color:#000000;
background-color:#EAF2D3;
}
</style>
</head>
<body>
<table id="customers">
<tr>
<th>Company</th>
<th>Contact</th>
<th>Country</th>
</tr>
<tr class="data-row">
<td id="customers:0:company">Alfreds Futterkiste</td>
<td id="customers:0:contact">Maria Anders</td>
<td id="customers:0:chooseCountry">
<select id="customers:0:country">
<option>Germany</option>
<option>Sweden</option>
<option>Mexico</option>
</select>
</td>
</tr>
<tr class="data-row alt">
<td id="customers:1:company">Berglunds snabbköp</td>
<td id="customers:1:contact">Christina Berglund</td>
<td id="customers:1:chooseCountry">
<select id="customers:1:country">
<option>Germany</option>
<option selected="selected">Sweden</option>
<option>Mexico</option>
</select>
</td>
</tr>
<tr class="data-row">
<td id="customers:2:company">Centro comercial Moctezuma</td>
<td id="customers:2:contact">Francisco Chang</td>
<td id="customers:2:chooseCountry">
<select id="customers:2:country">
<option>Germany</option>
<option>Sweden</option>
<option selected="selected">Mexico</option>
</select>
</td>
</tr>
</table>
</body>
</html>
现在,我用来确定列中所有值的算法说“公司”是
- 确定具有类 = 或子字符串的行数为“数据行”。
- 构造字符串以获取单元格并将其从 0 迭代到 n-1
- 使用 text 方法检索文本
现在,如果我在 select_list 上使用它,它会返回列表中的所有选项。因此,我将检查标记的子项是文本字段还是下拉列表,并调用它们各自的函数来获取它们的值。
有没有一种方法可以在 Watir 中确定特定标签的子标签是否是特定标签,或者是否有类似于 JavaScript 中的 getAllChildNodes 的方法?
很抱歉描述过度,并提前感谢任何可能的解决方案。