2016-07-25 4 views
0

Select2 드롭 다운의 선택된 값을 설정하고 싶습니다. 주소와 청구서 주소가 포함 된 두 가지 유형의 주소가 표시됩니다. - 텍스트 상자 Select2 드롭 다운에서 선택한 값을 설정하십시오.

  • 주소 2 - 텍스트 상자
  • 타운 - 텍스트 상자
  • 국가 - 송장 주소도이 같은 필드가 있습니다
  • 드롭 다운

    1. 주소 1 : 각에는 다음과 같은 필드가 있습니다. 또한 하나의 체크 박스가 표시되면이를 클릭하면 주소 필드 값을 송장 주소 필드에 복사해야합니다. 글 상자 값을 복사하고 다른 글 상자로 설정할 수 있습니다. 하지만 드롭 다운 값을 복사하고 다른 드롭 다운으로 설정할 수 없습니다. 다음 코드를 사용했습니다 :

      $('#invoiceAddress').on('ifChecked', function (event) { 
          $('input[data-cg-address]').each(function (index, element) { 
           var fieldname = $(this).data('cg-address'); 
           var fieldvalue = $(this).val(); 
           $('#invoice-address').find('input[data-invoice-address="' + fieldname + '"]').val(fieldvalue); 
          }); 
      
          $('select[data-cg-address]').each(function (index, element) { 
           var fieldname = $(this).data('cg-address'); 
           var selectedValue = $(this).val(); 
           $('#invoice-address').find('select[data-invoice-address="' + fieldname + '"]').val(selectedValue); 
          }); 
      }); 
      

      이 코드는 정상적인 드롭 다운이면 작동합니다. Select2 드롭 다운에서 작동하지 않습니다.

      나는이 코드를 몇 페이지 더 사용했습니다. 그래서 그 드롭 다운의 ID를 사용하지 않을 수 있습니다. 공통 코드를 작성해야합니다. 아래 양식 필드입니다. 사전에

      <div class="panel"> 
                  <div class="panel-header"> 
                   <h3><i class="icon-bulb"></i> Address Details</h3> 
                  </div> 
                  <div id="cg-address" class="panel-content"> 
                   <div class="row"> 
                    <div class="col-sm-3"> 
                     <div class="form-group"> 
                      <label>@Html.DisplayNameFor(x => x.CompanyGroupAddress.Address1)</label> 
                      @Html.TextBoxFor(x => x.CompanyGroupAddress.Address1, new { @class = "form-control", data_cg_address = "address1" }) 
                      <div class="form-error"> 
                       @Html.ValidationMessageFor(x => x.CompanyGroupAddress.Address1) 
                      </div> 
                     </div> 
                    </div> 
                    <div class="col-sm-3"> 
                     <div class="form-group"> 
                      <label>@Html.DisplayNameFor(x => x.CompanyGroupAddress.Address2)</label> 
                      @Html.TextBoxFor(x => x.CompanyGroupAddress.Address2, new { @class = "form-control", data_cg_address = "address2" }) 
                      <div class="form-error"> 
                       @Html.ValidationMessageFor(x => x.CompanyGroupAddress.Address2) 
                      </div> 
                     </div> 
                    </div> 
                    <div class="col-sm-3"> 
                     <div class="form-group"> 
                      <label>@Html.DisplayNameFor(x => x.CompanyGroupAddress.Town)</label> 
                      @Html.TextBoxFor(x => x.CompanyGroupAddress.Town, new { @class = "form-control", data_cg_address = "town" }) 
                      <div class="form-error"> 
                       @Html.ValidationMessageFor(x => x.CompanyGroupAddress.Town) 
                      </div> 
                     </div> 
                    </div> 
                    <div class="col-sm-3"> 
                     <div class="form-group"> 
                      <label>@Html.DisplayNameFor(x => x.CompanyGroupAddress.Address4)</label> 
                      @Html.TextBoxFor(x => x.CompanyGroupAddress.Address4, new { @class = "form-control", data_cg_address = "address4" }) 
                      <div class="form-error"> 
                       @Html.ValidationMessageFor(x => x.CompanyGroupAddress.Address4) 
                      </div> 
                     </div> 
                    </div> 
                   </div> 
                   <div class="row"> 
                    <div class="col-sm-3"> 
                     <div class="form-group"> 
                      <label>@Html.DisplayNameFor(x => x.CompanyGroupAddress.Postcode)</label> 
                      @Html.TextBoxFor(x => x.CompanyGroupAddress.Postcode, new { @class = "form-control", data_cg_address = "postcode" }) 
                      <div class="form-error"> 
                       @Html.ValidationMessageFor(x => x.CompanyGroupAddress.Postcode) 
                      </div> 
                     </div> 
                    </div> 
                    <div class="col-sm-3"> 
                     <div class="form-group"> 
                      <label>@Html.DisplayNameFor(x => x.CompanyGroupAddress.CountyId)</label> 
                      @Html.DropDownListFor(x => x.CompanyGroupAddress.CountyId, new SelectList(Model.Counties, "Key", "Value"), "Select Company County", new { @class = "form-control", data_cg_address = "countyid" }) 
                      <div class="form-error"> 
                       @Html.ValidationMessageFor(x => x.CompanyGroupAddress.CountyId) 
                      </div> 
                     </div> 
                    </div> 
                    <div class="col-sm-3"> 
                     <div class="form-group"> 
                      <label>@Html.DisplayNameFor(x => x.CompanyGroupAddress.CountryId)</label> 
                      @Html.DropDownListFor(x => x.CompanyGroupAddress.CountryId, new SelectList(Model.Countries, "Key", "Value"), "Select Company Country", new { @class = "form-control", data_cg_address = "countryid" }) 
                      <div class="form-error"> 
                       @Html.ValidationMessageFor(x => x.CompanyGroupAddress.CountryId) 
                      </div> 
                     </div> 
                    </div> 
                   </div> 
                  </div> 
                 </div> 
                 <div id="invoice-address" class="panel"> 
                  <div class="panel-header"> 
                   <h3><i class="icon-bulb"></i>Invoice Address Details</h3> 
                  </div> 
                  <div class="panel-content"> 
                   <div class="row"> 
                    <div class="col-sm-3"> 
                     <div class="form-group"> 
      
                      <label> 
                       @Html.CheckBoxFor(x => x.InvoiceAddress, new { @id = "invoiceAddress", @for = "invoiceAddress", @class = "m-t-10" }) 
                       Same as Company Address 
                      </label> 
                     </div> 
                    </div> 
                   </div> 
                   <div class="row"> 
                    <div class="col-sm-3"> 
                     <div class="form-group"> 
                      <label>@Html.DisplayNameFor(x => x.CompanyGroupInvoiceAddress.Address1)</label> 
                      @Html.TextBoxFor(x => x.CompanyGroupInvoiceAddress.Address1, new { @class = "form-control", data_invoice_address = "address1" }) 
                      <div class="form-error"> 
                       @Html.ValidationMessageFor(x => x.CompanyGroupInvoiceAddress.Address1) 
                      </div> 
                     </div> 
                    </div> 
                    <div class="col-sm-3"> 
                     <div class="form-group"> 
                      <label>@Html.DisplayNameFor(x => x.CompanyGroupInvoiceAddress.Address2)</label> 
                      @Html.TextBoxFor(x => x.CompanyGroupInvoiceAddress.Address2, new { @class = "form-control", data_invoice_address = "address2" }) 
                      <div class="form-error"> 
                       @Html.ValidationMessageFor(x => x.CompanyGroupInvoiceAddress.Address2) 
                      </div> 
                     </div> 
                    </div> 
                    <div class="col-sm-3"> 
                     <div class="form-group"> 
                      <label>@Html.DisplayNameFor(x => x.CompanyGroupInvoiceAddress.Town)</label> 
                      @Html.TextBoxFor(x => x.CompanyGroupInvoiceAddress.Town, new { @class = "form-control", data_invoice_address = "town" }) 
                      <div class="form-error"> 
                       @Html.ValidationMessageFor(x => x.CompanyGroupInvoiceAddress.Town) 
                      </div> 
                     </div> 
                    </div> 
                    <div class="col-sm-3"> 
                     <div class="form-group"> 
                      <label>@Html.DisplayNameFor(x => x.CompanyGroupInvoiceAddress.Address4)</label> 
                      @Html.TextBoxFor(x => x.CompanyGroupInvoiceAddress.Address4, new { @class = "form-control", data_invoice_address = "address4" }) 
                      <div class="form-error"> 
                       @Html.ValidationMessageFor(x => x.CompanyGroupInvoiceAddress.Address4) 
                      </div> 
                     </div> 
                    </div> 
                   </div> 
                   <div class="row"> 
                    <div class="col-sm-3"> 
                     <div class="form-group"> 
                      <label>@Html.DisplayNameFor(x => x.CompanyGroupInvoiceAddress.Postcode)</label> 
                      @Html.TextBoxFor(x => x.CompanyGroupInvoiceAddress.Postcode, new { @class = "form-control", data_invoice_address = "postcode" }) 
                      <div class="form-error"> 
                       @Html.ValidationMessageFor(x => x.CompanyGroupInvoiceAddress.Postcode) 
                      </div> 
                     </div> 
                    </div> 
                    <div class="col-sm-3"> 
                     <div class="form-group"> 
                      <label>@Html.DisplayNameFor(x => x.CompanyGroupInvoiceAddress.CountyId)</label> 
                      @Html.DropDownListFor(x => x.CompanyGroupInvoiceAddress.CountyId, new SelectList(Model.Counties, "Key", "Value"), "Select Company County", new { @class = "form-control", data_invoice_address = "countyid" }) 
                      <div class="form-error"> 
                       @Html.ValidationMessageFor(x => x.CompanyGroupInvoiceAddress.CountyId) 
                      </div> 
                     </div> 
                    </div> 
                    <div class="col-sm-3"> 
                     <div class="form-group"> 
                      <label>@Html.DisplayNameFor(x => x.CompanyGroupInvoiceAddress.CountryId)</label> 
                      @Html.DropDownListFor(x => x.CompanyGroupInvoiceAddress.CountryId, new SelectList(Model.Countries, "Key", "Value"), "Select Company Country", new { @class = "form-control", data_invoice_address = "countryid" }) 
                      <div class="form-error"> 
                       @Html.ValidationMessageFor(x => x.CompanyGroupInvoiceAddress.CountryId) 
                      </div> 
                     </div> 
                    </div> 
                   </div> 
                  </div> 
                 </div> 
      

      감사

    답변

    0

    이 시도 :

    $('#checkbox').click(function(){ 
        var dropdown1 = $('#dropdown1').val(); 
    
        $('#dropdown2').val(dropdown1); 
    }); 
    
    +0

    나는이 코드를 몇 페이지 더 사용했습니다. 그래서 그 드롭 다운의 ID를 사용하지 않을 수 있습니다. 공통 코드를 작성해야합니다. – Lalitha

    0

    \t $("#chkbox").click(function() { 
     
         var options = $('#ddl1 option').clone(); 
     
         $('#ddl2').append(options); 
     
         });
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
     
    <input type="checkbox" id="chkbox" /> 
     
    <select id="ddl1"> 
     
    <option value="1">One</option> 
     
    <option value="2">Two</option>    
     
    </select> 
     
    
     
    <select id="ddl2">

    +0

    나는이 코드를 몇 페이지 더 사용했다. 그래서 그 드롭 다운의 ID를 사용하지 않을 수 있습니다. 공통 코드를 작성해야합니다. – Lalitha

    +0

    주어진 코드가 작동하지 않습니다. 확인해 주시겠습니까? – Lalitha

    +0

    입력을 입력 할 수 있습니다 [type = 'checkbox'] – Developer

    0

    난 그냥 같은 DropDownList로 설정 값에 트리거 ('변화')의 코드를 추가 이하.

    $('#invoice-address').find('select[data-invoice-address="' + fieldname + '"]').val(selectedValue).trigger("change"); 
    

    이제 제대로 작동합니다.

    관련 문제