我正在测试一个外观应用程序,其中每个页面有10个问题 - 每个问题有5个选项(单选按钮)。出于测试目的,我需要选择一些选择,它可以是第一个或最后一个 - 并不重要。我不知道单选按钮的名称,因为每个问题都是完全随机的。
我的逻辑是首先找到所有单选按钮的名称,然后从组中选择最后一个单选按钮。
var radioNames = {};
$$("input[type=radio]").filter(function(elem,index){
elem.getAttribute("name").then(function(name){
radioNames[name] = true;
});
}).then(function(){
for (name in radioNames){
$$("input[name='" + name + "']").last().click();
}
})
工作正常。我的问题:有没有更好的逻辑,用更少的编码来实现这个目标?
答案 0 :(得分:0)
map()
将是更合适的选择:
$$("input[type=radio]").map(function(elem) {
return elem.getAttribute("name");
}).then(function(radioNames) {
for (name in radioNames) {
$$("input[name='" + name + "']").last().click();
}
});