jQuery 「html」要素にHTML文字列を設定する

条件にマッチしたすべての要素に、引数として与えたHTML文字列を設定します。このメソッドはHTMLドキュメントでだけ有効です。XMLドキュメント上では使えません。jQuery1.4以降では、引数にクロージャを記述できますので、動的なHTML文字列の設定が可能になりました。

書式

$( 対象要素 ).html( HTML文字列 );
$( 対象要素 ).html( function(){処理…} );
$('div').html('<span>HTMLの文字列をセットします</span>');
$('div').html(function(){
    return '<span>'+$(this).index()+'番目のdiv要素です。</span>'
});

サンプル

付箋のdiv要素それぞれの中のHTMLを書き換える

<body>
<style>
  .sticky {
    background: #aaa;
  }
  .stickies {
    background: #00ffff;
  }
</style>
  <div class="main">
    <div class="header">
      <h1>サンプル</h1>
    </div>
    <div class="content">
      <div class="sticky">
        <p>コロッケ定食</p>
        <fingure><img src="./images/112083_s.jpg" width="200px" height="100px"></fingure>
      </div>
      <div class="sticky">
        <p>オムライス</p>
        <fingure><img src="./images/2227584_s.jpg" width="200px" height="100px"></fingure>
      </div>
      <div class="sticky">
        <p>ホットドッグ</p>
        <fingure><img src="./images/1418030_s.jpg" width="200px" height="100px"></fingure>
      </div>
      <button class="button">HTMLを書き換える</button>
    </div>
    <div class="footer">
      <hr>
      <p class="copyright">2024 xxx all rights reserved.</p>
    </div>
  </div>
  <script>
    $(document).ready(function(){
      $('.button').on('click',function(){
        $('.sticky:first').html('<p class="desc">販売終了</p>');
        $('.sticky:last').html('<p class="desc">販売中止</p>');
      });
    });
  </script>
</body>
実行結果
HTMLを書き換えるボタンをクリックした後