1

これには助けが必要です。別のドロップダウン要素からの選択に基づいてテキストが変化するスパン要素があります。

<span class="drop link" id="title-tagger-20965969" style="cursor:default;text-decoration:underline;">...ng calls or email - 2E1</span>

基本的に、上記の例 (2E1) のように、スパン要素テキストの末尾にあるテキスト コードに一致する、対応する div ID (以下) を表示したい

<div id="changingArea">
<div id="2E1" class="desc">TEXT 2</div>
<div id="2E2" class="desc">TEXT 2</div>
<div id="2E3" class="desc">TEXT 3</div>
</div>

また、span 要素に div id がテキストとして含まれていない限り、すべての 'chingArea' div を非表示にしたいと考えています。

前もって感謝します

4

2 に答える 2

1

idにdivを配置し、span attributeに基づいて非表示/表示することをお勧めしますid

$('span').click(function(){
    var id = $(this).attr('data-id');
    $('.desc').hide(); //hide all divs
    $('#'+id).show(); //show div based on id
});

フィドル

アップデート

spanこの形式のテキストが常にある場合は、このよう...ng calls or email - 2E1-するidことができます

$('span').click(function(){
    var html = $(this).html();
    var split = html.split('-');
    $('.desc').hide(); //hide all divs
    $('#'+$.trim(split[1])).show(); //show div based on id
});

フィドル

于 2013-09-12T04:09:25.950 に答える
0

これを試して:

$('span').click(function(){
var txt = $(this).text();
$('.desc').hide(); //hide all divs
var id;
$("div.desc").each(function(){
id=$(this).attr("id");
    if(txt.indexOf(id)>=0){
    $(this).show();
    }
})   
});

ここでフィドル

于 2013-09-12T04:29:47.977 に答える