Показать сообщение отдельно
  #1 (permalink)  
Старый 29.05.2018, 07:41
Интересующийся
Отправить личное сообщение для Syfer43 Посмотреть профиль Найти все сообщения от Syfer43
 
Регистрация: 20.01.2017
Сообщений: 17

element val() после ajax
Добрый день, уважаемые участники форума, специалисты!
имеем:
Тело документа, обновляемое по событиям(суть обновления - загрузка нужного шаблона страницы, то есть, наполнение <div> контентом нужного мне шаблона, а так же, передача данных от пользователя в систему посредством $_POST, валидация данных, и, в случае успешной валидации - запись данных в переменную $_SESSION).

Пример события:
Пользователь ввел две переменных, после этого, система, проверив данные, сделала выборку из БД, и предоставила результаты в виде селекта, с опциями - строками бд(идентификаторы), выбрав из списка нужный идентификатор, пользователь получает полную выписку. В случае, если результаты пустые/не те, пользователь нажимает назад, после чего подгружается предыдущий шаблон, где он может повторить ввод данных. Ввод данных и выборки опций происходят в диалоговом окне.

Суть проблемы:
При попытке повторного ввода данных, в переменной $_POST['account'] не передается ничего, т.е. пусто.

Диалоговое окно:
$(".dialog").dialog({
        modal: true,
        autoOpen: false,
        width: 450,
        show: {
            effect: "fade",
            duration: 700
       },
        hide: {
            effect: "fade",
            duration: 200
        }
    });


<div class="dialog" title="Укажите данные">
    <div class="dialog-content">
        <label for="val1-code">Введите Val1:</label>
        <input type='number' name='val1' id="val1-code" />
<br>
        <label for="val2-code">Введите Val2:</label>
        <input type='number' name='val2' id="val2-code" />
        
        <div class="my-but select-button disabled">Отправить</div>
    </div>
</div>


Получение данных:
$(document).on('click', '.select-button', (function () {
        if ($(this).hasClass('enabled'))
        {
            var value = $('#cons-list').children('option:selected').val();
            if (consignee != '') {
                $("#page-preloader").fadeIn(800);
                $(".dialog").dialog('close');
                jQuery.ajax({
                    type: 'POST',
                    url: URL,
                    data: {
                        'action': 'validateAndShow',
                        'value': '' + value
                    },
                    success: function (data) {
                        $('.result').html(data);
                        $("#page-preloader").fadeOut(800);
                    }
                })
            } else {
                alert('empty!');
            }
        }
        else
        {
            return false;
        }
    })



Пример селекта, после получения данных от пользователя.
<select id="cons-list">
            <option readonly=""></option>
            <option value="val1">Text1</option>
            <option value="val2">Text2</option>
        </select>


Напомню, проблема при повторной отправке.

Смотрю в сторону того, что искать значения не на
$(document).ready(function(){

})


а на
$(document).on('change', function(){

})


Прошу помощи.
Ответить с цитированием