我是Django的新手并试图在div中使用javascript动态插入表单。但是,当我尝试添加表单标记时,似乎没有任何工作。我看过Django, Javascript: Form injected into DOM via javascript innerHtml crashes google chrome tab on submit. Works in IE,但这无法解决我的问题。 下面是我试图插入表单标记的函数。如何才能正确实现?
function createForms()
{
divForForms = document.getElementById("formsToAdd");
divForForms.innerHTML = "";
for(var ch = 1; ch <= chboxes; ch++) {
var formname = "form" +ch;
var start = "<div class=\'" + formname + "'>";
var middle = {{ formname.as_p }}
var end = "</div>";
divForForms.innerHTML = divForForms.innerHTML + start + middle + end;
console.log("div created: ", divForForms.innerHTML);
}
}
我也尝试过:
var middle = "{{ formname.as_p }}"
或者:
var middel = "{{ formname.as_p | escapejs }}"
但似乎没有任何效果。我最终希望将div粗略地创建为:
<div class="form1">
<input id="id_form1-descr" name="form1-descr" type="hidden" />
</div>
编辑: 添加下面的控制台输出以显示表单标记在div的innerHTML中不起作用。它在javascript控制台/ sources选项卡中给出了以下错误:
var middle = <input id="id_form1-descr" name="form1-descr" type="hidden" />
Uncaught SyntaxError: Unexpected token <
var finish = "</div>";
我尝试在引号中使用表单标记,但这也没有帮助。 帮助赞赏!感谢