计算每个班级的长度

时间:2013-07-10 23:20:31

标签: javascript jquery

我在this fiddle中也有以下代码。

HTML

    <span class="myName">John Smith</span>
    <span class="myName">John Smith</span>
    <span class="myName">John Smith</span>
    <span class="myName">John Smith</span>
    <span class="myName">John Smith</span>
    <span class="myName">John Smith</span>

的JavaScript

    $('.myName').each(function(){
        var text = $(this).html().split(' '),
            len = text.length,
            test = $(this).val().length,
            result = []; 
        console.log('outside: ' + test);
        for( var i = 0; i < len; i++ ) {
            result[i] = '<span class="name-'+[i]+'" >' + text[i] + '</span>';
            console.log('inside: ' + test);
        }
        $(this).html(result.join(' '));
        console.log('after: ' + test);
    }); 

它为myName div中的每个单词添加了一个span。 我想计算每个div中的Charecters,如果它是一个很长的名字,我可以将名字缩减为J Smith,例如。

但是如果你看一下控制台日志,我试图在三个不同的地方计算长度,它总是回到0? 我做错了什么?

1 个答案:

答案 0 :(得分:3)

zerkms是对的。你想改变这个:

test = $(this).val().length,

到此:

test = $(this).text().length,