14

私はこれを機能させています:

  <div data-people="australian">Australian people eats...</div>

  <script type="text/javascript">
    alert($("[data-people=australian]").html());
  </script>

しかし、これは機能せず、解決方法がわかりません:

  <div id="mich">Australian people eats...</div>

  <script type="text/javascript">
    $("#mich").data("people", "australian");

    alert($("[data-people=australian]").html());
  </script>

jQuery から data-* HTML5 属性を設定できず、それらを使用して DOM オブジェクトを選択できないのはなぜですか?

どうもありがとう

4

1 に答える 1

37

jQuery data()マッピングへのdata-属性は一方向です。ノードに実際に属性を設定する場合は、attr()関数を使用する必要があります。

$("#mich").attr("data-people", "australian");

ドキュメントから:

data-attributesは、データプロパティが最初にアクセスされたときにプルされ、その後アクセスまたは変更されなくなります(その後、すべてのデータ値はjQueryに内部的に保存されます)

于 2012-12-26T08:42:50.140 に答える