2017-09-22 14 views
-1

誰かが、その関数内の他のすべてのボタンに対してコマンドhideを追加するのを手伝ってもらえますか?この関数では、関数を重水化することなく、同じページに複数のボタンを配置できるためです。関数内の他のすべてのボタンにhideを追加するjQuery

var d = document; 
 
function trclick(a){ 
 
    var b=a.id,view,valbt; 
 
    var c=$("#bd_"+b); 
 
    var e=d.getElementById('nod_'+b); 
 
    view=c.css('display'); 
 
    c.toggle('slow'); 
 
    valbt=(view=='none'?'[-]':'[+]'); 
 
    e.innerHTML=valbt; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script> 
 
<center> 
 
    <button id="look1" onclick="trclick(this);" style="font-size: 11px; cursor: pointer;"><span id="nod_look1">[+]</span>Look1</button> 
 
    <div id="bd_look1" style="border: 0px inset; margin: 0px; padding: 6px; display: none;"> 
 
    HELLO 
 
    </div><br /> 
 
    
 
    <button id="look2" onclick="trclick(this);" style="font-size: 11px; cursor: pointer;"><span id="nod_look2">[+]</span>Look2</button> 
 
    <div id="bd_look2" style="border: 0px inset; margin: 0px; padding: 6px; display: none;"> 
 
    HELLO 
 
    </div><br /> 
 
    
 
    <button id="look3" onclick="trclick(this);" style="font-size: 11px; cursor: pointer;"><span id="nod_look3">[+]</span>Look3</button> 
 
    <div id="bd_look3" style="border: 0px inset; margin: 0px; padding: 6px; display: none;"> 
 
    HELLO 
 
    </div> 
 
</center>

答えて

1

クラス(例: "BD")を追加コンテンツのdivのために、常に現在のものを表示する前にそれらを隠します。 [+]/[ - ]スパンも同じです。同じボタンを押す

var d = document; 
 
function trclick(a){ 
 
    var b=a.id,view,valbt; 
 
    var c=$("#bd_"+b); 
 
    $(".bd").hide(100); //hide all first 
 
    $(".nod").html('[+]'); //reset labels to [+] 
 
    c.toggle('slow'); //it could be c.show('slow') 
 
    $("#nod_"+b).html('[-]'); //current label to [-] 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script> 
 
<center> 
 
    <button id="look1" onclick="trclick(this);" style="font-size: 11px; cursor: pointer;"><span class="nod" id="nod_look1">[+]</span>Look1</button> 
 
    <div id="bd_look1" class="bd" style="border: 0px inset; margin: 0px; padding: 6px; display: none;"> 
 
    HELLO 
 
    </div><br /> 
 
    
 
    <button id="look2" onclick="trclick(this);" style="font-size: 11px; cursor: pointer;"><span class="nod" id="nod_look2">[+]</span>Look2</button> 
 
    <div id="bd_look2" class="bd" style="border: 0px inset; margin: 0px; padding: 6px; display: none;"> 
 
    HELLO 
 
    </div><br /> 
 
    
 
    <button id="look3" onclick="trclick(this);" style="font-size: 11px; cursor: pointer;"><span class="nod" id="nod_look3">[+]</span>Look3</button> 
 
    <div id="bd_look3" class="bd" style="border: 0px inset; margin: 0px; padding: 6px; display: none;"> 
 
    HELLO 
 
    </div> 
 
</center>

+0

は、私は、コードを修正しましたエラー – jmsmarcelo

+0

が発生します。 [+]と[ - ]のラベルを切り替える必要はありません。 –

+0

同じボタンを押しても機能しない – jmsmarcelo

関連する問題