我想制作一个django-pp,其中一个屏幕可以在单击按钮时动态添加文本字段。我是用嵌入在html文件中的javascript代码来实现的。这个html文件包含在django应用程序的templates文件夹中。在
这是我的代码:
<script type = "text/javascript">
var counter = 1;
var limit = 5;
function addInput(divName){
if (counter == limit) {
alert("You have reached the limit of adding " + counter + " inputs");
}
else {
var newdiv = document.createElement('div');
newdiv.innerHTML = "Email address " + (counter + 1) + " <br><input type='text' name='myInputs[]'>";
document.getElementById(divName).appendChild(newdiv);
counter++;
}
}
</script>
<form method="POST">
<div id="dynamicInput">
Email Address 1<br><input type="text" name="myInputs[]">
</div>
<input type="button" value="Add another text input" onClick="addInput('dynamicInput');">
</form>
但它显示按钮和字段。但当我单击按钮时,它不会再次添加字段。怎么了?django不允许以这种方式使用javascript吗?因为javascript是客户端,django在服务器端工作?如果是这样的话,我该怎么做呢?我是django新手。请帮忙。在
关于是否可以将JavaScript和Django结合起来的问题。正如您所说,Django是在服务器端使用的技术,而JavaScript在客户端的浏览器中执行。在
但是,您可以使用Django的模型来准备应该在客户端执行的JS代码。您可以在模板的代码中执行此操作:
这将由Django计算,它将用}。在
serverMsg
模型变量的实际值替换{据我所知,如果您将JS代码放在单独的*.JS文件中,它将无法工作,因为Django不会解析这个文件。在
也许这是派生视图内部的问题。试试这个:
在您的基本html视图中添加或查找(这必须放在
<head>
标记中):And(在
^{pr2}$<body>
标记内)然后在您的派生视图中:
我把你的脚本复制到我的Django项目中,效果很好。在
相关问题 更多 >
编程相关推荐