2012-02-16 2 views
1

상위 콤보로 비활성화 한 후 하위 콤보 상자를 재설정하려고합니다. 부모 콤보 상자에서 select option을 선택할 때 자식 콤보 상자가 비활성화됩니다. 부모 콤보에서 select 옵션을 선택하면 하위 콤보 상자가 채워진 후 하위 콤보가 비활성화되지만 하위 콤보 인이 시간에 하위 콤보를 재설정하는 방법은 please select 옵션도 표시됩니까? 내가 자바 스크립트에 추가해야하는 것은 무엇입니까?선택하지 않은 후 콤보 상자 재설정

<script type="text/javascript"> 
     $(document).ready(function() { 
     $(function(){ 
var arrVal = ["RS", "MN", "KL"]; 
$("#parentcombo").change(function(){ 
var valToCheck = String($(this).val()); 

if (jQuery.inArray(valToCheck,arrVal) == -1) 
{ 
$("#childcombo").attr("disabled", "true"); 
} 
else 
{ 
     $("#childcombo").removeAttr ("disabled");  
}   
}); 
}); 
});  
    </script> 

HTML

<select id="parentcombo"> 
<option value="_">select</option> 
<option value="RS">RS</option> 
<option value="MN">MN</option> 
<option value="KL">KL</option> 
</select> 

<select id="childcombo" disabled="true"> 
<option value="_">please select</option> 
<option value="somevalue">somevalue</option> 
<option value="somevalue1">somevalue1</option> 
<option value="somevalue2">somevalue2</option> 
</select> 

답변

3

사용 $('#childcombo').val("_") 아동 콤보 상자에 "please select" 옵션을 선택합니다. 당신이 select 요소에 어떤 옵션을 선택 val() 방법을 사용하고 여기에 옵션 value을 전달하려는 경우

, 그것은 option 있음을 선택합니다.

자식 콤보 상자에서 "please select" 옵션을 선택하려고 했으므로 "_" 값을 사용하여 val() 메서드에 전달했습니다.

순수한 자바 스크립트를 사용하는 다른 방법은 selectedIndex select 요소의 속성을 설정하는 것입니다.

$('#childcombo')[0].selectedIndex = 0;//option index to set selected 
+0

젠장을해야 30 초 :)으로 날 이길 –

+0

미안 미안 그것은 :) 일 – Tom

1
$("#childcombo").val("_"); 

트릭을

1
else 
{ 
    $("#childcombo").removeAttr ("disabled");  
    $("#childcombo").val('_'); /// <===== 
}