检查表格单元格中存在的元素类型

check what type of element is present in table cell

本文关键字:元素 类型 存在 检查表 表格 单元格 检查      更新时间:2023-09-26

使用量角器,我正在循环浏览一些表格单元格,试图证明存在选中的复选框。

var elements = element.all(by.css(columncssname));  
elements.each(function (cell, index) {
     <--need to confirm if checkbox displayed an checked here -->
});

我怎么说这里(在单元格中)是否有类型复选框的元素?

有什么想法吗?

您可以使用

isDisplayed()函数来检查元素是否显示,同时使用函数来检查元素是否被选中isSelected()函数。假设有多个复选框,每个单元格中一个,以下是检查它们的方法 -

var elements = element.all(by.css(columncssname));
var checkboxElement = $('SUB_LOCATOR_FOR_EACH_CHECKBOX_IN_CELL');
elements.each(function (cell, index) {
    expect(cell.checkboxElement.isDisplayed()).toBe(true); //Verify checkbox is displayed
    cell.checkboxElement.isSelected().then(function(selected){
        if(selected) console.log('Element Selected'); //Prints element selection to console
    });
});

检查元素是否被选中的另一种方法是使用filter()函数来获取选中复选框的count()。方法如下 -

var checkboxElement = element.all(by.css('LOCATOR_FOR_ALL_CHECKBOXES')); //provide a universal locator for all checkbox and not sub locator to table cell
checkboxElement.filter(function(eachCell){
    return eachCell.checkboxElement.isSelected().then(function(selected){
        return selected;
    });
}).count().then(function(count){
    console.log(count); //returns count of elements that are checked
});

希望对你有帮助