jQuery(document).ready(function($) { /* State/Country select boxes */ var states_json = wc_country_select_params.countries.replace(/"/g, '"'); var states = $.parseJSON( states_json ); $('select.country_to_state, input.country_to_state').change(function(){ var country = $(this).val(); var $statebox = $(this).closest('div').find('#billing_state, #shipping_state, #calc_shipping_state'); var $parent = $statebox.parent(); var input_name = $statebox.attr('name'); var input_id = $statebox.attr('id'); var value = $statebox.val(); var placeholder = $statebox.attr('placeholder'); if (states[country]) { if (states[country].length == 0) { $statebox.parent().hide().find('.chosen-container').remove(); $statebox.replaceWith(''); $('body').trigger('country_to_state_changed', [country, $(this).closest('div')]); } else { var options = ''; var state = states[country]; for(var index in state) { options = options + ''; } $statebox.parent().show(); if ($statebox.is('input')) { // Change for select $statebox.replaceWith(''); $statebox = $(this).closest('div').find('#billing_state, #shipping_state, #calc_shipping_state'); } $statebox.html( '' + options); $statebox.val(value); $('body').trigger('country_to_state_changed', [country, $(this).closest('div')]); } } else { if ($statebox.is('select')) { $parent.show().find('.chosen-container').remove(); $statebox.replaceWith(''); $('body').trigger('country_to_state_changed', [country, $(this).closest('div')]); } else if ($statebox.is('.hidden')) { $parent.show().find('.chosen-container').remove(); $statebox.replaceWith(''); $('body').trigger('country_to_state_changed', [country, $(this).closest('div')]); } } $('body').trigger('country_to_state_changing', [country, $(this).closest('div')]); }); });