2013-07-31 3 views
0

사용자가 드롭 다운 상자에서 항목을 선택하는 경우에 대한 특정 이벤트가 있습니까? 여러 개의 드롭 다운 상자를 사용하는 상당히 큰 양식을 만들고 있습니다. 사용자가 첫 번째 옵션을 선택하면 두 번째 상자의 옵션이 AJAX를 사용하여 변경되고 비활성화 된 속성을 제거하려고하므로 첫 번째 항목을 제외한 모든 항목이로드되지 않습니다.jQuery 드롭 다운 선택 이벤트

$('#site_id').on('change', function(event) { 
    $('#access_type_id').removeAttr('disabled'); 
}); 

말썽 나는 데이 .change()이 드롭 다운 변경 결정의 옵션은 내가 실제로이 원하는 전에 드롭 다운 상자가 활성화 다음과 같은 경우 해고 될 것으로 보인다는 것이다. 사용자가 이전 드롭 다운에서 선택을 한 후에 만 ​​양식 필드를 "사용"하도록 변경 대신 사용할 수있는 대체 이벤트가 있습니까?

UPDATE 나는 전혀 변경 이벤트를 사용하여 내 AJAX 호출의 성공 섹션에서 내 removeAttr을 배치하지 않음으로써이 문제를 해결 할 수 있었다. 다음은 그 예입니다. 이를 통해 그 당시에는 "다음"드롭 다운을 사용 가능하게 만들 수있었습니다. 코드 아래

$('#access_speed_id').on('select2-blur', function(event){ 
    $.ajax({ 
     async: true, 
     data: $('#access_speed_id').serialize(), 
     dataType: 'html', 
     success: function(data, textStatus) { 
      $('#cdr_id').removeAttr('disabled'); 
      $('#cdr_id').html(data); 
     }, 
     type: 'post', 
     url: '/services/specificCdrs' 
    }); 
}); 
+0

? jsfiddle을 설정하거나 더 자세히 설명 할 수 있습니까? –

답변

3

시도 :

<select id="drop1"> 
<option value="volvo">Volvo</option> 
<option value="saab">Saab</option> 
<option value="mercedes">Mercedes</option> 
<option value="audi">Audi</option> 
</select> 
<select id="drop2"></select> 

jQuery를

$(document).ready(function(){ 
$("#drop2").attr("disabled", true); 
$("#drop1").change(function(){ 
    $("#drop2").attr("disabled", false); 
    //Put your ajax code here and bind like below code 
    $("#drop2").append(new Option("option text", "value")); 
    $("#drop2").append(new Option("xxx","1"));   
}); 
}); 

데모 : 그것의 혼란을 조금 당신이 실제로 무엇을 원하는가 http://jsfiddle.net/J5kmz/

관련 문제