私はかつてJqueryに関するテキストを見ました.Jqueryではいくつかのプロパティの名前が異なります。私はそれがvalまたは何かのようなJqueryでアクセスされるvalueプロパティだと思います。 JQueryはこれを多くしますか?プロパティ名を変更するJqueryの一般的なプラクティスですか?JQueryのプロパティ名には異なる名前がありますか?
答えて
jQueryはプロパティ名を変更しません。
jQueryは、jQueryオブジェクトの独自のメソッドを実装しています。これらはDOMプロパティやDOMメソッドとはまったく別物です。
たとえば、.val()
メソッドを使用して、jQueryオブジェクトから任意の入力コントロールの値を取得できます。内部的には、jQueryオブジェクトの.val()
メソッドはDOMオブジェクトのコンテンツにアクセスします(恐らく.value
プロパティを使用します)。しかし、DOMプロパティを置き換えるわけではありません。それはまだあなたの代わりにそれを使用することを選択しています。
同様に、jQueryにはオブジェクトのinnerHTML
を返す.html()
メソッドがあります。ここでも、これはjQueryオブジェクトのjQueryメソッドであり、DOMプロパティのinnerHTML
を置き換えるものではありません。 、jQueryの方法の両方は、メソッド呼び出しであること
var text = $("#test").val();
var title = $("#title").html();
注意:
var text = document.getElementById("test").value;
var title = document.getElementById("title").innerHTML;
のjQueryを使用した:
<input id="test" type="text">
<div id="title">This is my Title</div>
普通JavaScriptを使用して:
ここに説明するためにいくつかのコードの例でありますプロパティではありません。 jQueryのオブジェクトを使用している場合
でも、あなたは.get(n)
メソッドを使用してjQueryオブジェクトのうち、DOMオブジェクトを取得し、DOMプロパティを使用することができ、通常はそうする理由がないにもかかわらず:
var text = $("#test").get(0).value;
var title = $("#title").get(0).innerHTML;
jQueryはプロパティ名を変更しません。 jQueryはdom要素ではなくjQueryインスタンスを返します。
$thing[0].value
を実行すると動作します。 $thing.prop("value")
を実行するとうまくいきます。
$thing.val();
をjQueryのvalメソッド(これはvalのような "kind"ですが、奇妙なエッジケースのマジックも含む)を使用すると、おそらくラップされたdom要素の値が返されます。
val
のケースは、すべてのフォームフィールド(テキストフィールド、ラジオボタン、チェックボックス、テキストエリアなど)の値を設定したり取得したりするためですすべての場合においてinput.value
。
- 1. トークンまたはトークンタイプに名前のプロパティがありません
- 2. AS2:名前のあるプロパティがありません
- 3. 異なる名前のjQueryクローン要素
- 4. ドロップダウンの列名とはフォーマットテーブルの名前が異なりますか?
- 5. エイリアシングあるいは異なる名前
- 6. クラス名の前にはどのように名前がありますか?
- 7. バッチが異なる名前
- 8. 異なる名前
- 9. オブジェクトのプロパティ名がtypescriptのjsonの名前と異なる場合、どのようにタイプキャストしますか?
- 10. 異なる国のアプリ名が異なる可能性がありますか?
- 11. 'HelpPage_Default'という名前のルートがすでにルートコレクションにあります。ルート名は一意である必要があります。パラメータ名:名前
- 12. アセンブリ名とファイル名が異なる可能性がありますか?
- 13. 異なる名前の同じ名前のディレクトリの名前を変更する
- 14. 々BeanUtils:異なるプロパティ名
- 15. Windows APIに名前のないパイプがありますか?
- 16. このメソッドにはすでに名前がありますか?
- 17. 列の名前はデータによって異なります
- 18. 異なるヘッダーの名前が同じであるのはなぜですか?
- 19. SQL Serverテーブルの列に名前を付けるときは、使用しない名前がありますか?
- 20. C#の名前空間名 "LinqToVisualTree"はありますか?
- 21. コンソールの特別な名前はwin32にありますか?
- 22. MySQLには単一のテーブルスペースの名前がありますか?
- 23. この種のコメント行には名前がありますか?
- 24. データスキーマスタイル、オブジェクトの名前がキーまたはプロパティである場合
- 25. 名前のないパラメータは、空の名前「_」を使用して記述する必要がありますか?
- 26. このCSSテクニックには名前がありますか?
- 27. このコンビネータには名前がありますか?
- 28. プロパティの名前が異なる場合にマッピングルールを指定する方法
- 29. JQueryの検証:2つの入力フィールドにカスタムルールを追加する方法は異なりますが、名前の値は異なりますか?
- 30. コレクション内の異なる名前のプロパティにアクセスする方法は?
' [0] '>>>' get(0) ' – Raynos
@レイノス - あなたのポイントは何ですか?はい、 '[0]'はjQueryオブジェクトの '.get(0)'と基本的に同じですが、これは明らかにjQueryを知らない人だったので、 '.get(0) '' [0] 'を使うことができるようにjQueryオブジェクトを配列として扱うことを説明する必要があります。私はここでコーディングパターンを推奨していません、私はDOMプロパティとjQueryメソッドの違いをjQueryを知らない人に説明しようとしています。 – jfriend00
私はちょうど '[0]'が常に '.get(0)'より優れていると言っています。どちらも同じように混乱しています – Raynos