我是大家好,我现在正面临一个小错误,我有两个html表单,和nodeJS。对于NodeJS中的POST请求,无论如何,它只会到达其中的一个。以下是代码
<tr class="digitalLink"><td class="label">Input: Uncompressed GS1 Digital Link URI</td><td>
<form id="signUp"class="form-signUp" action="/compression" method="get" >
<input id="uncompressedDigitalLinkInput" class="digitalLink" type="text" v-model="uncompressedDigitalLinkInput" name="compression"></td>
<td class="charCount">{{uncompressedDigitalLinkInput.length}}</td>
<button type="submit" form="signUp" style="margin-top:30px"
class="btn btn-lg btn-primary btn-block" value="Compressed" >Compressed</button>
</form>
第二种形式:
<tr class="compressedDigitalLink"><td class="label">Input: Compressed GS1 Digital Link URI</td><td>
<form id="signUp"class="form-signUp" action="/decompression" method="post" >
<input id="compressedDigitalLinkInput2" class="compressedDigitalLink" type="text" v-model="compressedDigitalLinkInput2" name="decompression"></td>
<td class="charCount">{{compressedDigitalLinkInput2.length}}</td>
<button type="submit" form="signUp" style="margin-top:30px"
class="btn btn-lg btn-primary btn-block" value="Uncompressed" >Uncompressed</button>
即使我点击第二个表单的按钮,我仍然会看到这个错误信息

这里: NodeJS代码
app.post('/decompression', function(req,resp){ //Post Response
var decompression = req.body.decompression;
console.log("Mon deuxieme test" + decompression);
});非常感谢你的帮助
发布于 2019-07-19 17:22:17
我认为你有两个问题。
<button type="submit" form="signUp" style="margin-top:30px" class="btn btn-lg btn-primary btn-block" value="Uncompressed" >Uncompressed</button>两个submit按钮都指向相同的表单id="signUp",即第一个表单。每个HTML元素都应该有一个uniqueID,你需要为表单指定不同的ID,并在提交按钮(form="signUp1", form="signUp2")中引用它们。或者最好删除提交按钮中的表单属性,因为这两个提交按钮都在各自的表单中。
<form id="signUp"class="form-signUp" action="/decompression" method="post">我不认为action="/decompression"是引用nodejs端点的有效方法。在您的本地计算机上,您可能有action="http://localhost:8080/decompression",端口可能会根据您的情况而有所不同。
希望我的回答是有帮助的。
https://stackoverflow.com/questions/57107997
复制相似问题