2012-07-30 3 views
2

아코디언에서 필자는 두 개의 필드가 하나의 상태 1이고 다른 하나는 상태 2입니다. 텍스트 상자의 테두리 색을 변경하고 싶습니다. 상태 1을 클릭하면 텍스트 상자의 경계가 빨간색으로 표시되고 나머지는 회색이어야합니다. 상태 2를 클릭하면 모든 텍스트 상자가 회색이어야하고 그 중 하나는 빨간색이어야합니다 (빨간색으로 상자를 선택하는 논리는 당분간 떠납니다).jquery를 사용하여 아코디언 선택이 제대로 작동하지 않습니다.

나는 이것을 달성하기 위해 다음 코드를 작성했습니다. 내가 가진 유일한 문제는 코드의 첫 번째 옵션 즉 상태 1을 클릭하면 코드가 제대로 작동하는 반면 두 번째 옵션 상태 2를 클릭하면 코드가 작동하지 않는다는 것입니다 (즉, 필요한 텍스트 상자가 작동하지 않습니다. 빨강 및 다른 모든 회색 않습니다)

$("div a").live('click', function() { 
     if($(this).text()=="State 1"||selected_accord=="State 1") 
     { 
     $('input').css('border-color', 'gray'); 
     if(fromi==1) 
     { 
     document.getElementById(input_from[0].id).style.borderColor = "red"; 
     } 

    } 

     if($(this).text()=="State 2"||selected_accord=="State 2") 
     { 
     $('input').css('border-color', 'gray'); 
     if(userkeyi==1) 
     { 
     document.getElementById(input_userkey[0].id).style.borderColor = "red"; 
     } 
     } 
}); 
+0

jsfiddle.net을 사용하여 데모 만들기 –

+0

이미 가지고있는 요소를 가져 오기 위해'getElementById'를 사용하고 있습니까? – Musa

+0

어쩌면 당신도 HTML을 표시 할 수 있을까요? – NewInTheBusiness

답변

0

이 코드는 정상적으로 작동합니다. 내가 선택한 변경 사항은 selected_accord를 제거한 것뿐입니다. 상자를 기본적으로 빨간색으로 만들 수 없어서이 변수를 사용했습니다. 그러나 다른 합의 옵션의 경우이 변수는 정의되지 않았습니다. 그것은 두 번째 옵션이 작동하지 않는 문제였습니다.

관련 문제