0

###HTML

<ul id="thiselement">
    <li>test</li>
    <li>timer</li>
    <li>check</li>
    <li>ramramesh</li>
    <li>ramesh</li>
</ul>

###jQuery

document.write($("#thiselement li:not(:contains('ramesh'))").text());

###期待される結果

testtimercheckramramesh

###私が得ているもの

testtimercheck

どうすればこれを達成できますか?テキストが見つかった場所に返されることは理解してcontainsいますが、結果で each 関数を使用したいので、正確なテキストセレクターのみが必要です

$("#thiselement li:not(:contains('ramesh'))").each(function(){});

JSフィドル

4

3 に答える 3

3

https://jsfiddle.net/dntAU/2/をご覧ください。

$('ul li').each(function(){
    var text = $(this).text()
    if ( text == 'ramesh'){
      alert(text + " is ramesh ")   
    }else{
    alert(text + " is not ramesh ");
    }
});

$('#thiselement li:contains("ramesh")').filter(
    function(){
        if( $(this).text() == 'ramesh'){
            $(this).addClass('highlight');
        }
    });
于 2013-06-07T10:47:09.237 に答える
0

vinothini に拡張された回答は JSFiddle に従いますが他の可能性を期待しています

$('ul li').each(function(){
    var text = $(this).text()
    if ( text == 'ramesh'){
      alert(text + " is ramesh ")   
    }else{
    alert(text + " is not ramesh ");
    }
});

$('#thiselement li').filter(
    function(){
        if( $(this).text() != 'ramesh'){
            $(this).addClass('highlight');
        }
    });


$('#thiselement li').each(
    function(){
        if( $(this).text() != 'ramesh'){
            $(this).addClass('back');
        }
    });

CSS

.highlight {
    color: white;
}

.back{background:blue;}
于 2013-06-07T12:35:50.183 に答える