Sha256: 0a9e3d166c5f3fbe735845074c066d69ff75a238e9827fff90dc488f78a93d06
Contents?: true
Size: 1.75 KB
Versions: 1
Compression:
Stored size: 1.75 KB
Contents
loadSubregions = ($countrySelect, clearPostalCode = false) -> $.each $countrySelect, (index, countrySelector) -> $particularCountrySelect = $(countrySelector) countryCode = $particularCountrySelect.val() uuid = $particularCountrySelect.data('effective-address-country') $nestedFields = $particularCountrySelect.closest('.nested-fields') $form = $particularCountrySelect.closest('form') $container = if $nestedFields.length == 0 then $form else $nestedFields # clear postal_code values on country change if it is turned on $container.find("input[data-effective-address-postal-code='#{uuid}']").val('') if clearPostalCode # load state options url = "/addresses/subregions/#{countryCode}" $stateSelect = $container.find("select[data-effective-address-state='#{uuid}']:first") if countryCode.length == 0 $stateSelect.prop('disabled', true).addClass('disabled').parent('.form-group').addClass('disabled') $stateSelect.html('<option value="">Please choose a country first</option>') else $stateSelect.prop('disabled', false).removeClass('disabled').parent('.form-group').removeClass('disabled') $stateSelect.find('option').first().text('loading...') $stateSelect.load url, -> stateSelectAvailable = $(@).find('option:last').val().length > 0 if stateSelectAvailable $(@).prop('required', true) $(@).prop('disabled', false) else $(@).prop('required', false) $(@).prop('disabled', true) $(document).on 'change', 'select[data-effective-address-country]', -> loadSubregions($(@), true) $ -> loadSubregions($('select[data-effective-address-country]')) $(document).on 'page:change', -> loadSubregions($('select[data-effective-address-country]'))
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
effective_addresses-1.3.5 | app/assets/javascripts/effective_addresses/address_fields.js.coffee |