selenium webdriverio checkbox和radiobox checkbox的value和checked属性
网页上有时候遇到checkbox和radio,一般情况下这两种都是input标签,我们可以通过点击或者发送空格的方式进行选中
当然,选中和判断是否选中还有其他的方法,如模拟鼠标点击、用js选中、修改标签属性选中;用js、jQuery判断是否选中、用标签属性判断是否选中,不过针对大部分情况,以上方法足够用了。如果以上方法失效,可以考虑直接修改或获取标签属性,或者可能是其他因素如等待时间、页面遮挡等导致无法选中,可进行更多尝试
一 、checked属性
checked属性代表的是当前checkbox是否被选中,如果选中返回true,未选中返回false。和value值无关。
<input class="fd-switch__input" type="checkbox" checked="">
checked只代表页面刷新时,checkbox处于选中状态。checked的属性返回true;
此时,点击checkbox使其处于非选中状态,html代码没有变化(checked依然源码上)。但checked的属性返回false;
html中出现checked字样,代表刷后新选,和checked=“任意值”无关。哪怕checked=“false”,刷新时,checkbox仍然是选中状态。可以理解为checked之后的属性值都是没意义的。
$x('....//input')[0].checked
flag = $(..//input').isSelected();
- html中checked意味着页面加载时,让该checkbox元素的checked属性为true,页面显示选中状态。
- 在提交表单时判断表单是否选中的标准是document.getElementById(“checkbox1”).checked返回true还是false。和html页面内容无关。
二 、value属性
<p><input type="checkbox" name="vehicle" id="checkbox1" /> I have a car</p>
alert(document.getElementById("checkbox1").value);
value的属性代表checkbox提交给表单的值。
- value如果没有设置,则默认value的值是“on”。如果设置,自然value就是设置的值。
- value的值和表单是否选中无关。 无论表单是否选中,checkbox的值都是一样的。
1.01^365=37.78
0.99^365=0.03
浙公网安备 33010602011771号