首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >HTML按钮可以执行POST请求吗?

HTML按钮可以执行POST请求吗?
EN

Stack Overflow用户
提问于 2013-04-16 19:38:28
回答 5查看 274.9K关注 0票数 99

我想要一个提交类型的按钮来发送一个POST请求。

我在想这样的事情:

代码语言:javascript
复制
<form action = "" method = "post">
    <button>Upvote</button>
<form>

其中字符串"Upvote“将作为POST请求中的名称发送。

我知道这不起作用,我也知道有使用AJAX(javascript)的方法,但我在这方面还是个新手。我只是想知道这是否在一般情况下是可能的。

更新

有人建议使用<input>标签,我也试过了。问题是它生成的是GET而不是POST。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-04-16 19:43:03

这可以使用类型为"submit“的输入元素来完成。这将对用户显示为一个按钮,单击该按钮将发送表单。

代码语言:javascript
复制
<form action="" method="post">
    <input type="submit" name="upvote" value="Upvote" />
</form>
票数 64
EN

Stack Overflow用户

发布于 2013-04-16 19:56:13

您需要给按钮一个名称和一个值。

没有名称就不能提交任何控件,按钮元素的内容是标签,而不是值。

代码语言:javascript
复制
<form action="" method="post">
    <button name="foo" value="upvote">Upvote</button>
</form>
票数 76
EN

Stack Overflow用户

发布于 2019-01-07 20:16:48

你可以在JS的帮助下做到这一点。在下面的示例中,使用fetch方法在单击按钮时提交POST请求:

代码语言:javascript
复制
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}`);
  }
});
代码语言:javascript
复制
<button id="post-btn">I'm a button</button>

票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16036041

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档