2014-02-21 5 views
0

내 양식에서 사용자가 지역을 선택하면 드롭 다운 메뉴가 XML 파일에서 채워집니다. 지역에 여러 옵션이 있습니다. 현재 사용자가 다른 옵션을 선택하면 DROPDOWN 목록이 "추가"됩니다. 나는 그것을 대체하고 싶다. 이 코드를 조정하는 방법에 대한 아이디어가 있습니까?XML 기반 드롭 다운 목록의 값 바꾸기

추신 : 나는 JS 코드에서 "AppendTo"메소드가 있다는 것을 알고있다. 기능성을위한 작업 자리 표시 자입니다.

DROPDOWN HTML: 
<select class="t2_drop_field" id="AppType1"></select> 

REGION SELECT HTML: 
<select name="OBKey__500_1" id="Region" multiple onchange="setAppOptions()"> 
    <option>Area 1</option> 
    <option>Area 1</option> 
</select> 



var e = document.getElementById("Region"); 
var eVal=e.options[e.selectedIndex].text; 

if (eVal == "J15 KY B" || eVal == "J15 OH B") 
    { 
      $(document).ready(function() { 
      var app_data;  

      // Loading APP 
      $.get('pe_form_options.xml', function(data) { 
       app_data = data; 
       var that = $('#AppType1'); 
        $('RegionB', app_data).each(function() { 
         $('<option />', { 
          text: $(this).text(), 
          value: $(this).attr('index') 
         }).appendTo(that); 
        }); 
      }, 'xml'); 
     }); 

답변

0

조금 더 솔직하게 생각했습니다. 모두에게 도움을 주셔서 감사합니다.

 var dv = document.getElementById('AppType1').value; 
     if (dv != ""){ 
      document.getElementById('AppType1').options.length = 0; 
     } 
0

나는 이것이 당신이 원하는 것을 100 % 확실하지 않다,하지만 <select>의 옵션을 대체하기 위해 새를 추가하기 전에, 기존의 것들을 제거해야 할 것입니다.

과 같이 코드를 수정하는 것이 작업을 수행하는 가장 쉬운 방법 :

... 
var that = $('#AppType1'); 
that.find('option').remove(); 
$('<option />', { 
    text: $(this).text(), 
    value: $(this).attr('index') 
}).appendTo(that); 
... 

내가 that.find('option').remove();을 추가 한 선이 <select> 태그 아래에있는 모든 <option> 태그를 발견하고 그들을 제거합니다.

관련 문제