ブートストラップ付きのボタンにリンクを配置するにはどうすればよいですか?


92

ブートストラップ付きのボタンにリンクを配置するにはどうすればよいですか?

ブートストラップのドキュメントには4つの方法があります。

<a href="#" class="btn btn-info" role="button">Link Button</a>
<button type="button" class="btn btn-info">Button</button>
<input type="button" class="btn btn-info" value="Input Button">
<input type="submit" class="btn btn-info" value="Submit Button">

最初のものは私には機能しません。ボタンは表示されず、リンク付きのテキストだけが、私が使用しているテーマを感じています。

2番目のボタンは私が欲しいもののボタンを示していますが、クリックされたときにボタンを別のページにリンクさせるコードは何ですか?

乾杯


2
jsfiddle.net/Lstcymqo問題は、使用しているテーマにある可能性があります
linktoahref 2016年

回答:


68

ボタンのクリックイベントで関数を呼び出すことができます。

<input type="button" class="btn btn-info" value="Input Button" onclick=" relocate_home()">

<script>
function relocate_home()
{
     location.href = "www.yoursite.com";
} 
</script>

またはこのコードを使用する

<a href="#link" class="btn btn-info" role="button">Link Button</a>

22
非常に悪い受け入れられた答え:あなたのリンクがウェブクローラーによってどのように解析されるか?タイトルなし、ターゲットなし、リンクではない、リダイレクトです...
hugsbrugs 2018

8
これは完全に不要であり、SEOにとって本当に悪いことです。以下の私のソリューションを見てください(stackoverflow.com/a/44130105/1202214)。
アンドレアス・バーグストロム

1
私への良い答え。
mo

135

ボタン要素が本当に必要ない場合は、クラスを通常のリンクに移動するだけです。

<div class="btn-group">
    <a href="/save/1" class="btn btn-primary active">
        <i class="glyphicon glyphicon-floppy-disk" aria-hidden="true"></i> Save
    </a>
    <a href="/cancel/1" class="btn btn-default">Cancel</a>
</div>

逆に、ボタンをリンクのように表示するように変更することもできます。

<button type="button" class="btn btn-link">Link</button>

11
受け入れられたものよりもはるかに良い答え- javascriptのための必要はありません...ありがとう
バラジクリシュナン

3
ボタンを使用する必要がある場合とリンクを使用する必要がある場合は、セマンティックとアクセシビリティに注意してください。通常、ページ上のアクションのボタン、およびページ内のコンテンツへのリンク、またはページから移動するためのリンク。
James Westgate 2017年

2番目のオプションの方が良いです;)
Pathros

132

最も簡単な解決策は、最初の例です。

<a href="#link" class="btn btn-info" role="button">Link Button</a>

あなたが言うように、それがあなたのために機能しない理由は、あなたが使用しているテーマの問題である可能性が最も高いです。このために肥大化した余分なマークアップやインラインJavascriptに頼る理由はありません。


6
これはすべての人にとって最も簡単です。
ナナパーティーカー2017年

2
ワンライナーが最高です;)
Ivan

12

<button>マークアップ内でリンクの色を正しく機能させるためのもう1つのトリック

<button type="button" class="btn btn-outline-success and-all-other-classes"> 
  <a href="#" style="color:inherit"> Button text with correct colors </a>
</button>

bs4ベータ版では、たとえば次のようにbtn-primary-outline変更されていることに注意してください。btn-outline-primary


btn-outline-primarybtn-outline-primary同じものです。タイプミスはありますか?
ismailarilik 2018年

このアンカースタイリングはjqueryのUIテーマ項目によって過乗られていたとして、私のために働いた
Avagut

9

これが私が解決した方法です

   <a href="#" >
      <button type="button" class="btn btn-info">Button Text</button>
   </a>  

3

上記の答えを組み合わせると、おそらくあなたにも役立つ簡単な解決策が見つかります:

<button type="submit" onclick="location.href = 'your_link';">Login</button>

インラインJSコードを追加するだけで、リンク内のボタンを変換し、彼のデザインを維持できます。


2

次のコードを追加するだけです。

<a class="btn btn-primary" href="http://localhost:8080/Home" role="button">Home Page</a>
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.