2011-09-03 5 views
3

사용자가 아래 첫 번째 목록 (id = 1)에서 "a"옵션을 선택하면 두 번째 양식 (id = 2)을 표시하고 싶습니다. 목록 (선택이 아닌 제출)에서 사용자의 선택을 탐지하는 방법은 무엇입니까?목록에서 사용자 선택 검색

<form method="post" id="1" > 
     <select name="menu_destination"> 
      <option value="a" >A</option> 
      <option value="b">B</option> 
     </select> 
</form> 

<form method="post" id="2" > 
     <select name="menu_destination"> 
      <option value="a" >A</option> 
      <option value="b">B</option> 
     </select> 
</form> 

편집 : 이미 다른 문제가 발생했습니다. 옵션을 선택할 때마다 다른 옵션을 숨기지 않고 목록을 표시합니다. 성가신, 안돼?

$("select#category").change(function() { 
    var category = $(this).val(); 
    $("select#"+category).toggle(); 
}); 

답변

3

심플. ID는 숫자로 시작하지 않아야합니다. 적어도 HTML5가 끝나기 전까지는 안됩니다.

$("#one select").change(function() { 
    $("#two").toggle($(this).val() == "a"); 
}); 

Demo.

참고 : 데모에서, 두 번째 양식의 가시성은 처음 style="display:none"을 통해 숨겨져 있지만 페이지가로드 우리가 처음 트리거 변경 이벤트가 올바른을 설정하기 때문에 볼 수입니다 첫 번째 양식의 드롭 다운에서 처음 선택되는 항목 (즉, 처음 렌더링되는 항목)에 따라 양식의 상태입니다.

+1

모두가 잊어 버릴 것 같은'toggle'에 대한 부울 인수에 +1! –

+0

감사하지만 사용자가 어떤 값을 선택했는지 감지하려면 어떻게해야합니까? 그가 선택한 가치 옵션을 얻고 싶습니다. – Anon

+0

@Anon -'alert ($ (this) .val)' – karim79

관련 문제