如何检查html列是否包含空单元格?

时间:2017-11-20 05:16:41

标签: javascript jquery html

我想检查html表的某列的单元格是否完全填满。 #mf-table的第5列无法保持未填充状态。

我使用以下函数来选择列。它工作正常。

$.fn.column = function(i) {
     return $('tr td:nth-child('+(i+1)+')', this);
 }

如果列有空单元格,我使用以下方法弹出警告。

if ($('#mf-table').column(5).is(":empty")) {      
        toastr.error('Fill empty fields');
    }

此方法不起作用。任何人都可以告诉我这里有什么问题吗?

编辑:

我试过以下方法。为了测试我的代码,我为第5列着色,它工作正常。在这里,我考虑了整个表中任何单元格都是空的情况

if ($('#mf-table tr td').is(":empty")) {
    $('#mf-table').column(5).css( "background-color", "red" )
}

因此,在上述方法中,如果至少一个单元格为空,则列5着色。我需要帮助来改变这个方法,以检查第5列中至少有一个单元格是否为空。

2 个答案:

答案 0 :(得分:1)

试试这个:



jQuery('table tr').each(function(){
 if(jQuery(this).children('td:empty').length > 0){
    console.log('Ther is Empty Cell');
 }
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
        <tbody>
            <tr>
                <td>20</td>
                <td>20</td>
                <td>20</td>
                <td></td>
            </tr>
        </tbody>
    </table>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

尝试使用此功能(复制from here):

function isEmpty( el ){
  return !$.trim(el.html())
}