2017-10-10 1 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)'및 대소 문자가 case 'Iedereen': '등이됩니다. – 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

스위치 문은 다음과 같을 것이다 :

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

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

PS합니다. 각각의 경우에 break;을 잊지 마십시오.