2016-10-25 1 views
0

Я пытаюсь позволить пользователю создать несколько типов одной и той же формы ввода.Django, jQuery. Я не могу загрузить() после одного и того же div несколько раз

Проблема в том, что при первом нажатии на кнопку форма добавляется в div append_form, но независимо от того, сколько раз я нажимаю кнопку «Добавить», никакая другая форма не добавляется. Что я делаю не так?

Это мой HTML код:

<div class="col-md-9"><strong>{% trans "Please, add as many measures as you like to be available for the institutional simulation" %}</strong></div> 
<div class="col-md-3"><button class="btn btn-success" onclick="addForm('{% url "add_measure_form" %}')"><i class="fa fa-plus-square"></i> {% trans "Add Measure" %} </button></div> 

<div id="append_forms"></div> 

И это мой сценарий

function addForm(url){ 
    $("#append_forms").after().load(url); 
} 

И это мое мнение Джанго:

def add_measure_form(request): 
    data = { 

    } 
    return render(request, "_frm_inner_form.html", data) 

и URLs

url(r'^measures/form/add/$', add_measure_form, name="add_measure_form") 
+0

общий АЯКС нравится эта '$ (" # append_forms ") .load (url);' может быть? –

+0

Нет, это не работает. Я думаю, что load() заменяет содержимое div, поэтому я добавил after(). Но все же я ошибаюсь ... – xpanta

+0

Извините, нет. Это просто не загружается() в другой раз. Никаких ошибок в консоли, никаких HTTP-ошибок до сих пор. – xpanta

ответ

1

удалить функцию после того, как() присоединять оболочку DIV к формам и загружать в нее данные:

function addForm(url){ 
    $("#append_forms").append('<div>').load(url); 
    } 

или использовать запрос

$.ajax({ 
    url:url, 
    success:function(data) { 
     $("#append_forms").append(data); 
    } 
}); 
+0

Извините, но это не сработало. Я попробовал это с append и prepend. – xpanta

+0

является успешным ajax, есть ли в нем теги html head + body? – madalinivascu

+0

есть. На данный момент я просто возвращаю «

привет!

'. Первый раз, второй раз, хотя это не так. – xpanta