2016-06-29 9 views
0

입니다. 동적으로 생성 된 드롭 다운 목록이 있습니다. 드롭 다운 목록은 사용자가 라디오 버튼을 선택한 후에 만 ​​표시됩니다. 드롭 다운에서 값을 선택한 후 다른 테이블이 동적으로 채워집니다. 현재 드롭 다운의 모든 선택 항목에 대해 작동합니다.드롭 다운 목록에서 첫 번째 항목에 대한 트리거 이벤트 기본값은

그러나 사용자가 라디오 버튼을 선택하면 첫 번째 인스턴스에서 테이블이 비어 있습니다. 그는 두 번째 항목을 먼저 선택해야하며 표가 가득 찼습니다. 사용자가 첫 번째 항목을 선택하면 테이블이 올바르게 채워집니다.

따라서 사용자가 먼저 항목을 선택하지 않아도 기본적으로 드롭 다운의 첫 번째 항목에 대해 이벤트가 트리거되도록 보장 할 수있는 방법이 있습니다.

JS는

$('#domainSelect').on("change", function(){ 
     dropdownSelect = $("#domainSelect option:selected").text(); 
     var regionsArr = regions; 
     if ($.isArray(regionsArr)){ 
      Object.keys(regionsArr).forEach(function (key) { 
        if(regionsArr[key]['region']== dropdownSelect){ 
         var x=document.getElementById('DomainTable').rows; 
         x[0].cells[1].innerHTML=regionsArr[key]['name']; 
         x[1].cells[1].innerHTML=regionsArr[key]['deviceCount']; 
        } 
       }); 
     } 
    }); 

JSP 파일 : 바인드되면

<table> 
     <tr> 
      <td colspan="2" style="text-align: center;"> 
       <select id="domainSelect"> 
        <c:forEach items="${statsDomainList}" var="option"> 
         <option value="${option.name}">${option.name}</option> 
        </c:forEach> 
       </select> 
      </td> 
     </tr> 
    </table> 

답변

0

당신은 단지 이벤트 트리거 할 수 있습니다 환상적인

$('#domainSelect').on("change", function(){ 
    /**/ 
}).change(); // or .trigger('change'); 
+0

을! 이제 작동합니다. –

관련 문제