Просмотр поста

.
UJIN

Мне снова нужна ваша помощь...
У меня есть разворачивающие динамически списки, скрины будут...
Например, нужно добавить в этот список какое-то поле.
Если делать это без обновления странички, то данные добавляются, но на страничке не появляются, причиною тому становится то, что страничка не перезагружается. Если перезагружать страничку, то списки сворачиваются :-(
Сохранить позиции раскрытых строк не вариант... их может быть много и может быть несколько уровней вложений. Как реализовать добавление без перезагрузки, но с частичной догрузкой странички, без свертывания подуровней? Или изменение.. Тоже самое.. Оно меняется, но после перезагрузки, но тут проще.. В поле вывода подставить нужное нам id, которое после успешного изменения обновить средствами jquery.
JQuery

Код (+/-)

<script>
    function AjaxFormRequest(result_id,formMain,url) {
        jQuery.ajax({
            url:     url,
            type:     "POST",
            dataType: "html",
            data: jQuery("#"+formMain).serialize(),
            success: function(response) {
                document.getElementById(result_id).innerHTML = response;
            },
            error: function(response) {
                document.getElementById(result_id).innerHTML = "<p>Виникла помилка при додавані типу, спробуйте пізніше!</p>";
            }
        });

        $(':input','#formMain')
            .not(':button, :submit, :reset, :hidden')
            .val('')
            .removeAttr('checked')
            .removeAttr('selected');
    }
</script>


HTML
<!doctype html>
<html>
<head>
<meta charset="utf-8"/>
<title></title>
<meta name="description" content=""/>
<meta name="Keywords" content=""/>
<link href="css/style.css" type="text/css" rel="stylesheet"/>
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
</head>
<body>
<div class="wrapper">
   <div class="form">
    <div id="messegeResult">
        <p> Оставьте ваши контакты и наш консультант свяжется с вами </p>
    </div>
       <div id="messegeResult2">
           <p> Оставьте ваши контакты и наш консультант свяжется с вами </p>
       </div>

       <form method="post" action="" id="formMain" name="formMain">
        <input id="name" type="text" name="name" placeholder="Введите ваше имя" maxlength="30" autocomplete="off" required/>
        <input id="telephone" type="Tel" name="telephone" placeholder="Введите ваш телефон" maxlength="30" autocomplete="off" required/>
        <input id="button" type="button"  value="Заказать обратный звонок" onclick="AjaxFormRequest('messegeResult', 'formMain', 'index.php/types2')"/>
    </form>



       <form method="post" action="" id="formMain2" name="formMain">
           <input id="name_last" type="text" name="name_last" placeholder="Введите ваше имя" maxlength="30" autocomplete="off" required/>
           <input id="telephone_last" type="Tel" name="telephone" placeholder="Введите ваш телефон" maxlength="30" autocomplete="off" required/>
           <input id="button_last" type="button"  value="Заказать обратный звонок" onclick="AjaxFormRequest('messegeResult', 'formMain2', 'index.php/types2')"/>
       </form>

   </div>
</div>

</body>
</html>



Изменить еще как-то понятно... поле обновить на страничке и норм, ну вот что делать с добавлением и удалением, если за один заход без перезагрузки может быть десяток изменений, добавление и удаление.
Прикрепленные файлы: