リンクにGETではなくPOSTを使用するようにする 質問する

リンクにGETではなくPOSTを使用するようにする 質問する

これが可能かどうかはわかりません。しかし、ハイパーリンクでいくつかの変数を渡し、GET ではなく POST (フォームのように) を使用する方法を知っている人がいたら教えてください。

ベストアンサー1

これには JavaScript は必要ありません。この回答が投稿された時点では、この質問に対するすべての回答に何らかの形で JavaScript が使用されているため、この点を明確にしておきたいと思いました。

送信したいデータを含む隠しフィールドを持つフォームを作成し、フォームの送信ボタンをリンクのように見えるようにスタイル設定することで、純粋な HTML と CSS を使用してこれを簡単に行うことができます。

例えば:

.inline {
  display: inline;
}

.link-button {
  background: none;
  border: none;
  color: blue;
  text-decoration: underline;
  cursor: pointer;
  font-size: 1em;
  font-family: serif;
}
.link-button:focus {
  outline: none;
}
.link-button:active {
  color:red;
}
<a href="some_page">This is a regular link</a>

<form method="post" action="some_page" class="inline">
  <input type="hidden" name="extra_submit_param" value="extra_submit_value">
  <button type="submit" name="submit_param" value="submit_value" class="link-button">
    This is a link that sends a POST request
  </button>
</form>

実際に使用する CSS は、サイト上の通常のリンクのスタイル設定方法によって異なる場合があります。

おすすめ記事