Javascript HTML页面中的Node.js和现有Div
我正在阅读node.js中面临的一个问题的解决方案,发现一个问题已经得到了回答: 但我在找别的东西 我在服务器上有一个表单和一个div作为客户端HTML的一部分。 用户单击按钮向服务器发送请求。服务器依次检查请求并将响应发送回客户端浏览器。这里我想做的是将响应数据附加到客户端浏览器上现有的HTML div中 例如,我想在现有HTML DIV中填充数据,作为以下代码的一部分:Javascript HTML页面中的Node.js和现有Div,javascript,html,node.js,Javascript,Html,Node.js,我正在阅读node.js中面临的一个问题的解决方案,发现一个问题已经得到了回答: 但我在找别的东西 我在服务器上有一个表单和一个div作为客户端HTML的一部分。 用户单击按钮向服务器发送请求。服务器依次检查请求并将响应发送回客户端浏览器。这里我想做的是将响应数据附加到客户端浏览器上现有的HTML div中 例如,我想在现有HTML DIV中填充数据,作为以下代码的一部分: app.post('/process_post', urlencodedParser, function (req, r
app.post('/process_post', urlencodedParser, function (req, res) {
// Prepare output in JSON format
response = {
first_name:req.body.first_name,
last_name:req.body.last_name
// HERE I would like to use HTML coding to insert data to existing HTML DIV.
};
console.log(response);
res.end(JSON.stringify(response));
})
谢谢。您的服务器应该在响应中将所需的数据作为JSON对象发送回客户端,然后您可以在客户端上使用JavaScript通过以下步骤执行您想要的操作:
- 使用类似document.getElementById的内容来选择div,例如
const elem=document.getElementById(“您的id”)代码>
- 使用innerHTML
elem.innerHTML=新数据更新div的内容代码>
const launchAjax=(formData)=>{
axios.post(“/process\u post”,formData)
.然后(响应数据=>{
const elem=document.getElementById(“您的id”);
//假设所需数据在JSON中称为info
elem.innerHTML=responseData.info;
});
const button=document.getElementById(“按钮id”);
addEventListener(“单击”,启动Ajax);
或者使用浏览器本机支持的获取API:
const launchAjax=(formData)=>{
获取(“/process\u post”{
方法:“张贴”,
正文:JSON.stringify(formData)
})
.then(response=>response.json())
.然后(responseJSON=>{
const elem=document.getElementById(“您的id”);
//假设所需数据在JSON中称为info
elem.innerHTML=responseData.info;
});
}
当然可以,但是客户端javascript什么时候执行?它如何知道它已经从服务器接收到数据。例如,如果我单击html按钮>请求转到服务器>服务器发送响应>客户端接收,但是如何告诉客户端javascript它现在需要在html div中追加数据。非常感谢。让我尝试一下,然后返回f我有一个问题。你能在上面的例子中发布一个使用axios librry的例子吗?那太好了。这个例子已经使用了axios库。如果你使用的是像webpack这样的构建工具,你只需要导入文件顶部的库。或者,你可以使用browsersThank you原生支持的获取API再次感谢你的帮助和时间!