ホームページ >ウェブフロントエンド >jsチュートリアル >jQuery_jquery での prop() attr() の使用法の詳細な説明

jQuery_jquery での prop() attr() の使用法の詳細な説明

WBOY
WBOYオリジナル
2016-05-16 15:58:221198ブラウズ

HTML要素自体の固有属性については、処理時にpropメソッドを使用します。
HTML 要素の独自のカスタム DOM 属性については、処理時に attr メソッドを使用します。

jquery の上位バージョンで prop メソッドが導入された後、いつ prop を使用する必要がありますか? attr をいつ使用するか?両者の違いは何ですか?こうした問題が生じます。

この 2 つの違いについては、オンラインで多くの回答があります。ここで私の考えを話させてください。私の考えは非常に単純です。

HTML要素自体の固有属性については、処理時にpropメソッドを使用します。
HTML 要素の独自のカスタム DOM 属性については、処理時に attr メソッドを使用します。

上記の説明は少し曖昧かもしれませんが、いくつか例を挙げてみましょう。

コードをコピーします コードは次のとおりです:

http://www.baidu.com" target="_self" class="btn">Baidu

この例では、要素の DOM 属性には「href、target、class」が含まれます。これらの属性は、W3C 標準にも含まれているか、IDE でインテリジェントにプロンプ​​トを表示できます。表示される属性は、固有属性と呼ばれます。これらのプロパティを扱う場合は、prop メソッドを使用することをお勧めします。

コードをコピーします コードは次のとおりです:

この例では、要素の DOM 属性には「href、id、action」が含まれています。明らかに、最初の 2 つは固有の属性ですが、後の「action」属性は要素自体にはありません。の属性。これはカスタム DOM 属性です。これらの属性を扱う場合は、attr メソッドを使用することをお勧めします。 prop メソッドを使用して値を取得し、プロパティ値を設定すると、未定義の値が返されます。

別の例:

コードをコピーします コードは次のとおりです:

表示されますか
表示されますか

checkbox、radio、select などの要素の場合、checked 属性は「checked」と「selected」に対応します。これらも固有の属性であるため、正しい結果を得るには prop メソッドを使用する必要があります。

コードをコピーします コードは次のとおりです:

$("#chk1").prop("チェック済み") == false
$("#chk2").prop("チェック済み") == true

上記で attr メソッドを使用すると、次のように表示されます:

コードをコピーします コードは次のとおりです:

$("#chk1").attr("チェック済み") == 未定義
$("#chk2").attr("チェック済み") == "チェック済み"

以上がこの記事の全内容です。皆さんに気に入っていただければ幸いです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。