Sha256: 2a22cf323b2f54cab68a85e35b6e3b9243da64b8e3254d8870ee3ade31cbd227
Contents?: true
Size: 1.74 KB
Versions: 2
Compression:
Stored size: 1.74 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.removeAttr('disabled').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) $(@).removeAttr('disabled') else $(@).removeAttr('required') $(@).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
2 entries across 2 versions & 1 rubygems