2012-09-04 3 views
0

많은 사람들이 질문에 대한 답을 알고있는 것처럼 보입니다. 나는 무엇을 얻으려고하는지 쉽게 이해할 수 있도록 약간의 말을했습니다. 제발 도와주세요. 값 = 2 옵션은 내가 좋아하는 표시 상자 아래 새로운 드롭 원하는 선택옵션을 선택하면 새 드롭 다운 목록이 추가됩니다. jquery

<select id="1"> 
    <option val="1"></option> 
    <option val="2"></option> 
</select> 

:

<select id="2"> 
    <option val="1"></option> 
    <option val="2"></option> 
</select> 

당신은 ID 2가 같은 옵션을 가지고 있지만 난 그냥 새로운 원하는으로 볼 수 사용자가 다른 옵션을 선택할 때마다 드롭 다운 상자. 내 JQuery와 및 HTML 코드는 다음과 같습니다 :

HTML :

단지 무리의 옵션이있는 선택을 생성한다 무엇 showCampaignDropdown
<div id="campaigns"> 
    <div id="campaign_1"> 
     <label for="ddcampaign" style="margin-right: 10px;">Campaign:</label>  
     <?=showCampaignDropdown('campaign', false, false, true, false, 'All Campaigns')?> 
    </div> 
</div> 

.

$(function() { 
    campaigncount = 1; 
    $(document).on('change', '#campaign_' + campaigncount + ' select', function() { 
     var firstcampaign = parseInt($('#campaign_'+campaigncount+' select option:selected').val()); 
     //alert(campaigncount); 
     campaigncount++;  
     //if value is > 0 add more campaigns to search 
     if (firstcampaign > 0) { 
      $(this).attr('disabled', true); 
      $('#campaigns').append('<div id="campaign_'+campaigncount+'"><?=showCampaignDropdown('campaign', false, false, true, false, 'All Campaigns')?></div>'); 
     } else { 
      $('#campaign_' + (campaigncount-1) + ' select').attr('disabled', false); 
     } 
    }); 
}); 

처음 선택에 작동하므로 때 원래 campaign_1을 선택을 선택하면 아래 새로운 드롭을 추가하고, 첫 번째, 두 번째 선택 아무 일도 발생하지 않도록 설정 :

내 JQuery와는 다음과 같습니다. 도와주세요. 드롭 다운 상자는 동일해야하며 ID를 수정하고 싶지 않습니다. PHP를 통해 생성 된 이후.

답변

1

변경 이벤트는 # campaign_1 div에만 연결됩니다. 이렇게해야합니다 : on('change', '#campaigns select' ... 이제는 캠페인에있는 모든 div가 해당 처리기를 실행할 항목을 선택합니다.

+0

고맙습니다. 어떻게 보지 못했을까요? (가끔은 코드를 쳐다 보며 간단한 것을 볼 수 없습니다.) 고마워요. – Giorgi

관련 문제