2017-09-06 20 views
-1

간단한 코드로 붙어 있지만 알아낼 수 없습니다.클래스가있는 div에 텍스트에 특수 단어가 포함 된 경우 클래스 추가

많은 옵션이있는 선택 상자가있는 특수 양식 작업 중입니다. 이 선택 상자는 표시되지 않으며 사용자가 선택한 항목을 가져올 때 필요합니다. 사용자가 보는 "선택 상자"는 div와 범위로 구성됩니다. 사용자가 옵션을 선택하면 요소의 텍스트에 선택한 옵션이 표시됩니다. 이 값은 숨겨진 선택 상자에서 선택한 옵션을 변경합니다. (나도 알아, 그 혼란)

위의이 부분은 잘 작동합니다. 내가 가진 주요 문제는 다른 선택 옵션이 입력란이 더 많은 다른 상자를 표시한다는 것입니다. 이제는 "selected"스팬에 특별한 단어가 포함되어 있고 해당 상자에 뉴스 클래스를 추가하려는 경우 해당 상자를 표시하려고합니다. 그러나 내가 찾은 많은 코드들은 나를 위해 일하지 않았습니다.

<div class='selectBox'> 
    <span class='selected'></span> 
    <span class='selectArrow'>&#9660</span> 
    <div class="selectOptions" > 
     <span class="selectOption" data-value="Rund" value="Rund">Rund</span> 
     <span class="selectOption" data-value="Eck" value="Eck">Eck</span> 
    </div> 
</div> 

그리고이 상자는 새 클래스 '쇼 형식의 "가야 : 여기

if($('.selected:contains("Eck")').length) { 
    $(".d1").addClass("show-form"); 
} 

내 양식에서 일부 HTML입니다. 그러나 그렇지 않았습니다.

<div class="box d1">CONTENT</div> 
+1

같은 하나의'selected' 클래스 범위에 대한 데이터가 무엇인지가없는 존재한다. 그래서 당신의 상태는 실패하고 아무 일도 일어나지 않는다. –

+0

'.selected'에 어떤 내용을 추가하는 스크립트가 있습니까? 그렇다면 게시하십시오. 또는 플러그인 인 경우 플러그인인지 여부를 지정하십시오. –

답변

0

은 주어진 HTML에서이

$('.selectedOption').click(function(){ 
    $selected = $(this).val(); 
    switch($selected) { 
     case 'Eck': 
      $(".d1").addClass("show-form"); 
      break; 
     case 'Rund': 
      // do something else 
      break; 
    } 
}); 
+0

'this (은)는 '

+0

'$ (this) .data ('value ')'이어야합니다. – Barmar

관련 문제