2017-10-10 15 views
2

私は、各li値に特定の説明がある単純なフィルタシステムを作成しています。 現在、IF文を使用していますが、スイッチに変換したいと思います。これは可能ですか?クリック時のjquery:切り替える場合

ありがとうございます。

マイコード:

$("ul.simplefilter").on('click', 'li', function (e) { 

if($(this).text() == "Iedereen"){ 
    $("#uitleg p").remove(); 
    $("#uitleg").append("<p>Iedereen</p>");   
} 
else if($(this).text() == "Coach studentenparticipatie"){ 
    $("#uitleg p").remove();  
    $("#uitleg").append("<p>Coach studentenparticipatie</p>"); 
} 
else if($(this).text() == "Communicatie"){ 
    $("#uitleg p").remove();  
    $("#uitleg").append("<p>Communicatie</p>"); 
} 
else if($(this).text() == "Coördinator"){ 
    $("#uitleg p").remove();  
    $("#uitleg").append("<p>Coördinator</p>"); 
} 
}) 
+0

'switch($(this).text)'と大文字と小文字が区別されます。例: – abhishekkannojia

+0

ものと仮定します。 '$( '#uitleg')。html( '

' + $(this).text()+ '

');' – Tushar

答えて

2

これは可能ですか?

はい、switchの文を使用してください。

$("ul.simplefilter").on('click', 'li', function (e) { 
    switch($(this).text()){ 
    case "Iedereen": 
     $("#uitleg p").remove(); 
     $("#uitleg").append("<p>Iedereen</p>"); 
     break; 
    case "Coach studentenparticipatie": 
     $("#uitleg p").remove();  
     $("#uitleg").append("<p>Coach studentenparticipatie</p>"); 
     break; 

    } 
}); 

また、あなたは.html()メソッドを使用して、単一の行でそれを達成することができます。

$("ul.simplefilter").on('click', 'li', function (e) { 
    $('#uitleg').html('<p>'+$(this).text()+'</p>'); 
}); 

お持ちの場合は、例えば、100個の値には、100例を書くだけで.html()方法を使用することが高価です。

0

switch文は次のようなものになります。

$("ul.simplefilter").on('click', 'li', function (e) { 

switch($(this).text()){ 
    case "Iedereen" : 
     $("#uitleg p").remove(); 
     $("#uitleg").append("<p>Iedereen</p>"); 
     break; 
.... 

PSを。それぞれのケースでbreak;を忘れないでください。

関連する問題