Оптимизировать JS код, выполнить JS после валидации с перезагрузкой

Помогите пожалуйста разобраться с JS, лучше с подробными коментами. Заранее благодарен.

  1. Оптимизировать код
  2. Заполняю данные формы, выбираю в select value=3, меняется форма (некоторые input скрываются), нажимаю кнопку отправить, данные отправляются на валидацию и страница перезагружается. Т.к валидация не прошла, меня перебрасывает обратно на страницу с сохранением всех данных. Проблема в select, данные пришли value=3 а JS код не отработал и форма для value=3 отобразилась не правильная. Как решить эту проблему
<select name="lg_type_organization" class="js_type_organization">
        <option value="0">Не указал</option>
        <option value="1">ООО</option>
        <option value="2" selected="">ЗАО</option>
        <option value="3">ИП</option>
        <option value="4">Сомозанятый</option>
    </select>
<table  id="d_n" class="w100 info1" style="display: none">
        <tbody>
        <tr>
            <td id="ogrn_ogrnip">ОГРН</td>
            <td><input type="text"></td>
        </tr>
        <tr>
            <td id="name_organization">Название организации "как в учредительных документах"</td>
            <td><input type="text"></td>
        </tr>
        <tr id="address_legal">
            <td>Юридический адрес</td>
            <td><input type="text"></td>
        </tr>
        <tr>
            <td>Фактический адрес</td>
            <td><input type="text"></td>
        </tr>
        </tbody>
    </table>
    $(function(){
        $('.js_type_organization').on('change', function() {
            var type = this.value;
            switch (type) {

                case '0':
                    $('#d_n').css('display','none');
                    break;

                case '1':
                    $('#ogrn_ogrnip').text('ОГРН');
                    $('#name_organization').text('Название организации "как в учредительных документах"');
                    $('#address_legal').css('display','');
                    $('#d_n').css('display','');
                    break;

                case '2':
                    $('#ogrn_ogrnip').text('ОГРН');
                    $('#name_organization').text('Название организации "как в учредительных документах"');
                    $('#address_legal').css('display','');
                    $('#d_n').css('display','');
                    break;

                case '3':
                    $('#ogrn_ogrnip').text('ОГРНИП');
                    $('#name_organization').text('Данные предпринимателя "как в учредительных документах"');
                    $('#address_legal').css('display','');
                    break;

                case '4':
                    $('#ogrn_ogrnip').text('ОГРНИП');
                    $('#name_organization').text('Данные предпринимателя "как в учредительных документах"');
                    $('#address_legal').css('display','none');
                    $('#d_n').css('display','');
                    break;
            }
        });
    });

Ответы (1 шт):

Автор решения: Евгений Платов

бросайте событие вручную

$('.js_type_organization').change();

если целиком перегружаете страницу то после блока

$('.js_type_organization').on('change', function() {

если аяксом то после отрисовки формы

→ Ссылка