如何检查html看起来是否为“空”

时间:2012-08-21 15:58:30

标签: javascript jquery aloha-editor

我正在与Aloha-Editor(AE)合作,正如here所解释的那样,Aloha似乎用<br>和段落做了一些时髦的事情,所以即使我有一些看起来像什么的东西空,它实际上不在HTML代码中(见下文)。

以下是Aloha在看起来似乎是空的时候有时会产生的基础HTML的例子。

<br class="aloha-end-br">

<br class="aloha-end-br" style="">

<p style=""><br class="aloha-end-br"></p>

&nbsp;这不是Aloha产生的东西,但如果我添加了一个空格,它仍然看起来是空的。

我的问题是如何“修剪”满足的html内容,以便我知道它看起来是空的。我之所以想要使用这样的东西,是因为我可以知道是否应该将内容可编辑更新发送回服务器(如果它有内容),或者如果我应该删除,只需删除contenteditable元素并告诉服务器已被删除(如果它是空的)。

2 个答案:

答案 0 :(得分:1)

只需使用text()获取文字,其中没有HTML。 &nbsp;是空格,因此您必须修剪它们。这是一个简单的功能:

function isEmpty( el ) {
    return $.trim( el.text() ) === '';
}

用法:

if ( isEmpty( $( '#someId' ) ) {
    // It's empty!
}

答案 1 :(得分:1)

尝试在其上运行.text(),然后修剪空格和你得到的字符串。这将删除所有的html标签。