使用jQuery + Javascript识别空文本节点

时间:2012-09-01 03:36:35

标签: javascript jquery dom

你认为这很容易 - 但我现在最困难的时候了。

以下是我要确定的内容:

<span class="cw-value-one"></span>

这是我到目前为止所使用的内容:

    $('span.cw-value-one').each(function(){
        var textNode = $(this).text();
        var type = typeof textNode;
        var len = textNode.length;
        if($(this).is(':empty')){
            $(this).siblings('span.cw-value-two').css({"position": "relative", "left": "1em"});
        }
    });

好的,textNode = ""type = stringlen = 1 - 这些都没有帮助识别空文本节点,因为a的字符串类型和长度为1. jQuery .is(':empty')也没有工作。

那么你是如何识别JQuery中的空文本节点或简单的'Javascript?

2 个答案:

答案 0 :(得分:2)

您可能在跨度使用trim()中使用空格来删除文本范围内的空格(如果有)。

<强> Live Demo

  var textNode = $(this).text().trim();

答案 1 :(得分:0)

尝试检查文本的长度。

$('span.cw-value-one').each(function(){
        var textNode = $(this).text();
        var type = typeof textNode;
        var len = textNode.length;

        if(len <= 0){
            $(this).siblings('span.cw-value-two').css({"position": "relative", "left": "1em"});
        }
    });​

我还建议修剪文字。如果你想修剪文字,请务必看到这个即不喜欢修剪。 .trim() in JavaScript not working in IE