使用javascript检查HTML表格单元格是否为空?

时间:2010-03-01 23:10:26

标签: javascript html

这些简单的JS代码是否允许我检查单元格是否为空。

我正在尝试编写一个使用“onmouseover = func()”调用的函数;我似乎无法让JS代码正确。有什么想法吗?

我最理想的努力方法是确定一个单元格是否为空的代码,如果是,则设置一个简单的值,如“Cell Empty”。

我知道这可能听起来很简单,但我可以使用一些帮助。 谢谢你的任何想法。

3 个答案:

答案 0 :(得分:3)

这取决于最初会在那里发生什么。根据我的经验,如果一个单元格只包含空格,表格表现很奇怪,因此一个常见的解决方法是在其中放置一个 来阻止它崩溃。无论如何,这是你要检查的方式:

function elementIsEmpty(el) {
    return (/^(\s| )*$/.test(el.innerHTML);
}

function replaceCell(td) {
    if (elementIsEmpty(td)) {
        td.innerHTML = 'Cell Empty';
    }
}


<td onmouseover="replaceCell(this)"></td>

...虽然更好的方法是通过Javascript事件处理程序应用行为。

答案 1 :(得分:2)

如果您正在使用jQuery,请在元素上使用html()方法。鉴于此标记:

<td id="my_cell"></td>

此代码将执行此操作:

if ($('#my_cell').html() == '') {
  $('#my_cell').html('Cell Empty');
}

答案 2 :(得分:1)

没有jQuery(就像旧时代一样):

function func(e){
    var target = window.event ? window.event.srcElement : e ? e.target : null;
    if (target.innerHTML === ''){
        target.innerHTML = 'Cell Empty!';
    }
}