1. ホーム
  2. jquery

[解決済み] jQueryのprop()とattr()の違いとattr()とprop()の使い分け [duplicate]

2023-07-20 06:12:30

質問

jQueryでは.attr()が使われているところもあれば、.prop()が使われているところもあるようですが、SOやgoogleで調べてもよくわかりません。 SOとGoogleで私は非常に混乱しています。 これらの2つの正確な違いと、いつそれらを使用するのかを教えてください。

私は次のリンクを見てきました jQuery attr vs. prop, there are a list of props? jQuery attr vs prop?

しかし、私は答えを得ませんでした。私を助けてください。

ダウンボートを与える前に、理由を説明してください、そして、私は私の次の投稿で修正します。

どのように解決するのですか?

から ドキュメント

<ブロッククオート

属性とプロパティの違いは、特定の状況において重要になることがあります。jQuery 1.6以前では、一部の属性を取得する際に.attr()メソッドがプロパティ値を考慮することがあり、動作に一貫性がなくなることがありました。jQuery 1.6では、.prop()メソッドはプロパティの値を明示的に取得する方法を提供し、.attr()は属性を取得するようになりました。

例えば、selectedIndex, tagName, nodeName, nodeType, ownerDocument, defaultChecked, defaultSelected は .prop() メソッドで取得・設定する必要があります。jQuery 1.6以前は、これらのプロパティは.attr()メソッドで取得可能でしたが、これはattrの範囲ではありませんでした。これらは対応する属性を持たず、プロパティのみです。

コメント後更新

HTML要素に属性を設定することができます。ソースコードを書いているときに定義しておくと、ブラウザが解析したときに対応するDOMノードが生成され、オブジェクトとしてプロパティを持つようになります。

簡単な例を挙げます。

<input type="test" value="test" id="test" />

ここで タイプ、値、id は属性です。ブラウザがレンダリングすると、次のような他のプロパティを取得します。 align、alt、autofocus、baseURI、checkedなどです。 などのプロパティを取得します。

リンク もっと詳しく知りたい方は