当在 Django 中按下表单提交按钮时,如何创建一个 javascript 函数来更改 html
how do I create a javascript function that changes the html when a form submit button is pushed in django
当 html 不是表单提交或按钮的一部分时,我可以轻松更新它。或者甚至当它只是一个纯按钮元素(而不是来自表单的输入)时。但是,当我尝试将字符串附加到
class“chatGoesHere”时,没有任何反应。控制台也会快速重新加载,因为表单将要 \send。
我很高兴 post 我的 views.py 和 urls.py,但是,我很确定问题出在我下面的 html 文档中:
<p class="chatGoesHere" id="chatGoesHere"> 1st Item! </p>
<form action="\send\" method="post">
<input type="text" name="userMessage" />
<input type="submit" value="Send to smallest_steps bot" class="sendButt" id="sendButt" />
</form>
<script>
var btn = document.getElementById("sendButt");
btn.addEventListener("click", updateChat);
function createMenuItem(name) {
let li = document.createElement('p');
li.textContent = name;
return li;
}
const td = document.getElementById('chatGoesHere');
td.appendChild(createMenuItem("TEST2"))
function updateChat(){
const td = document.getElementById('chatGoesHere');
td.appendChild(createMenuItem("TEST3"))
}
</script>
我希望这样,每次用户按下表单的提交按钮时,页面都会添加一些内容,而无需重新加载页面。
谢谢
您需要将 django 与套接字一起使用。
看看这个演练。
几年前帮我做同样的事情!
https://channels.readthedocs.io/en/stable/tutorial/part_2.html
当 html 不是表单提交或按钮的一部分时,我可以轻松更新它。或者甚至当它只是一个纯按钮元素(而不是来自表单的输入)时。但是,当我尝试将字符串附加到
class“chatGoesHere”时,没有任何反应。控制台也会快速重新加载,因为表单将要 \send。
我很高兴 post 我的 views.py 和 urls.py,但是,我很确定问题出在我下面的 html 文档中:
<p class="chatGoesHere" id="chatGoesHere"> 1st Item! </p>
<form action="\send\" method="post">
<input type="text" name="userMessage" />
<input type="submit" value="Send to smallest_steps bot" class="sendButt" id="sendButt" />
</form>
<script>
var btn = document.getElementById("sendButt");
btn.addEventListener("click", updateChat);
function createMenuItem(name) {
let li = document.createElement('p');
li.textContent = name;
return li;
}
const td = document.getElementById('chatGoesHere');
td.appendChild(createMenuItem("TEST2"))
function updateChat(){
const td = document.getElementById('chatGoesHere');
td.appendChild(createMenuItem("TEST3"))
}
</script>
我希望这样,每次用户按下表单的提交按钮时,页面都会添加一些内容,而无需重新加载页面。
谢谢
您需要将 django 与套接字一起使用。
看看这个演练。
几年前帮我做同样的事情!
https://channels.readthedocs.io/en/stable/tutorial/part_2.html