我想要一个提交类型的按钮来发送一个POST请求。
我在想这样的事情:
<form action = "" method = "post">
<button>Upvote</button>
<form>
其中字符串"Upvote“将作为POST请求中的名称发送。
我知道这不起作用,我也知道有使用AJAX(javascript)的方法,但我在这方面还是个新手。我只是想知道这是否在一般情况下是可能的。
更新
有人建议使用<input>
标签,我也试过了。问题是它生成的是GET而不是POST。
发布于 2013-04-16 19:43:03
这可以使用类型为"submit“的输入元素来完成。这将对用户显示为一个按钮,单击该按钮将发送表单。
<form action="" method="post">
<input type="submit" name="upvote" value="Upvote" />
</form>
发布于 2013-04-16 19:56:13
您需要给按钮一个名称和一个值。
没有名称就不能提交任何控件,按钮元素的内容是标签,而不是值。
<form action="" method="post">
<button name="foo" value="upvote">Upvote</button>
</form>
发布于 2019-01-07 20:16:48
你可以在JS的帮助下做到这一点。在下面的示例中,使用fetch方法在单击按钮时提交POST请求:
const button = document.getElementById('post-btn');
button.addEventListener('click', async _ => {
try {
const response = await fetch('yourUrl', {
method: 'post',
body: {
// Your body
}
});
console.log('Completed!', response);
} catch(err) {
console.error(`Error: ${err}`);
}
});
<button id="post-btn">I'm a button</button>
https://stackoverflow.com/questions/16036041
复制相似问题