suchen
HeimWeb-Frontendjs-Tutorialjquery ermittelt den aktivierten Status des Kontrollkästchens und unterscheidet attr und prop_jquery

In einem aktuellen Projekt musste ich jquery verwenden, um festzustellen, ob das Kontrollkästchen in der Eingabe aktiviert war. Ich habe festgestellt, dass mit attr() der geänderte Status des Kontrollkästchens nicht ermittelt werden konnte jQuery 1.6 hat eine prop()-Methode hinzugefügt, die von der offiziellen Methode übernommen wurde. Eine Beschreibung davon lautet:

Der Unterschied zwischen Attributen und Eigenschaften kann in bestimmten Situationen wichtig sein. Vor jQuery 1.6 berücksichtigte die Methode .attr() beim Abrufen einiger Attribute manchmal Eigenschaftswerte, was zu inkonsistentem Verhalten führen konnte . Ab jQuery 1.6 bietet die Methode .prop() eine Möglichkeit, Eigenschaftswerte explizit abzurufen, während .attr() Attribute abruft.
Die Übersetzung des oben Gesagten lautet wahrscheinlich: prop() verarbeitet die Attribute, die vom Knotenobjekt stammen, das viele native Eigenschaften enthält, und attr() stammt von den Attributen des Objekts, was bei uns der Fall sein kann Fügen Sie Attribute zum Elementknoten hinzu. Es werden nur Knoten vorhanden sein. Natürlich stellt die vorherige Übersetzung nur meinen eigenen Standpunkt dar. Wenn es Fehler gibt, können Sie darauf hinweisen ~~

Um es einfach auszudrücken:

Für die inhärenten Attribute des HTML-Elements selbst verwenden Sie bei der Verarbeitung die prop-Methode.
Für unsere eigenen benutzerdefinierten DOM-Attribute von HTML-Elementen verwenden wir bei der Verarbeitung die Methode attr.
Die obige Beschreibung ist möglicherweise etwas vage. Ich werde einige Blog-Inhalte von Experten zitieren und meine Tests hinzufügen, um einige Beispiele zu nennen.

Erstes Beispiel: Inhärente Attribute und benutzerdefinierte Attributbeschreibungen des Elements

http://www.baidu.com" target="_self" class="btn">Baidu
In diesem Beispiel umfassen die DOM-Attribute des -Elements „href, target“ und „class“. Diese Attribute sind auch im W3C-Standard enthalten Mit anderen Worten: Die Eigenschaften, die in der IDE intelligent angefordert werden können, werden als intrinsische Eigenschaften bezeichnet. Beim Umgang mit diesen Eigenschaften wird die Verwendung der Prop-Methode empfohlen.

Löschen
In diesem Beispiel umfassen die DOM-Attribute des -Elements offensichtlich die ersten beiden Attribute, während das letztere „action“-Attribut von uns angepasst wird Es selbst verfügt nicht über dieses Attribut. Dies ist ein benutzerdefiniertes DOM-Attribut. Beim Umgang mit diesen Attributen empfiehlt sich die Verwendung der attr-Methode. Wenn Sie die Prop-Methode verwenden, um Werte abzurufen und Eigenschaftswerte festzulegen, werden undefinierte Werte zurückgegeben.

Zweites Beispiel: Der Unterschied zwischen prop() und attr() in Formularanwendungen

Sehen wir uns zunächst einen Codeabschnitt an, der die attr()-Methode verwendet:

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8" />
  <title> attr() vs prop()</title>
 </head>
 <body>
  <h3 id="用attr-判断是否选中">用attr()判断是否选中</h3>
  <input type="checkbox" id="input01" />我是第一个复选框A<br />
  <input type="checkbox" id="input02" checked="checked"/>我是第二个复选框B<br />
  <input type="button" id="button01" value="获取A的checked状态" />
  <input type="button" id="button02" value="获取B的checked状态" />
  <script src="js/jquery-1.11.0.js" type="text/javascript" charset="utf-8"></script>
  <script type="text/javascript">
   $(function(){
    $("#button01").click(function(){
     var $state01=$("#input01").attr("checked");
     alert($state01);
    })
    $("#button02").click(function(){
     var $state02=$("#input02").attr("checked");
     alert($state02);
    })
   })
  </script>
 </body>
</html>

Das Testergebnis des oben genannten Programms ist:

Wie aus dem dynamischen Diagramm ersichtlich ist, kann die Verwendung von attr() den ausgewählten Status des Benutzers nicht abrufen. Es wird nur der Anfangswert des Formulars zurückgegeben.

Schauen wir uns einen Codeabschnitt mit der prop()-Methode an:

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8" />
  <title> attr() vs prop()</title>
 </head>
 <body>
  <h3 id="用prop-判断是否选中">用prop()判断是否选中</h3>
  <input type="checkbox" id="input01" />我是第一个复选框A<br />
  <input type="checkbox" id="input02" checked="checked"/>我是第二个复选框B<br />
  <input type="button" id="button01" value="获取A的checked状态" />
  <input type="button" id="button02" value="获取B的checked状态" />
  <script src="js/jquery-1.11.0.js" type="text/javascript" charset="utf-8"></script>
  <script type="text/javascript">
   $(function(){
    $("#button01").click(function(){
     var $state01=$("#input01").prop("checked");
     alert($state01);
    })
    $("#button02").click(function(){
     var $state02=$("#input02").prop("checked");
     alert($state02);
    })
   })
  </script>
 </body>
</html>

Das Testergebnis des oben genannten Programms ist:

Wie aus dem dynamischen Diagramm ersichtlich ist, kann prop() verwendet werden, um den Auswahl- und Abbruchvorgangsstatus des Benutzers in Echtzeit abzurufen.

Der Unterschied, den ich zusammenfasse, ist: Der von der Eigenschaft aufgezeichnete Wert wird in Echtzeit entsprechend der Aktion des Benutzers aktualisiert, während der vom Attribut aufgezeichnete Wert der Anfangswert ist, der nur meine eigene Meinung darstellt.

Ich hoffe, dass dieser Artikel für alle hilfreich ist, die JavaScript-Programmierung lernen.

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
jquery实现多少秒后隐藏图片jquery实现多少秒后隐藏图片Apr 20, 2022 pm 05:33 PM

实现方法:1、用“$("img").delay(毫秒数).fadeOut()”语句,delay()设置延迟秒数;2、用“setTimeout(function(){ $("img").hide(); },毫秒值);”语句,通过定时器来延迟。

axios与jquery的区别是什么axios与jquery的区别是什么Apr 20, 2022 pm 06:18 PM

区别:1、axios是一个异步请求框架,用于封装底层的XMLHttpRequest,而jquery是一个JavaScript库,只是顺便封装了dom操作;2、axios是基于承诺对象的,可以用承诺对象中的方法,而jquery不基于承诺对象。

jquery怎么修改min-height样式jquery怎么修改min-height样式Apr 20, 2022 pm 12:19 PM

修改方法:1、用css()设置新样式,语法“$(元素).css("min-height","新值")”;2、用attr(),通过设置style属性来添加新样式,语法“$(元素).attr("style","min-height:新值")”。

jquery怎么在body中增加元素jquery怎么在body中增加元素Apr 22, 2022 am 11:13 AM

增加元素的方法:1、用append(),语法“$("body").append(新元素)”,可向body内部的末尾处增加元素;2、用prepend(),语法“$("body").prepend(新元素)”,可向body内部的开始处增加元素。

jquery中apply()方法怎么用jquery中apply()方法怎么用Apr 24, 2022 pm 05:35 PM

在jquery中,apply()方法用于改变this指向,使用另一个对象替换当前对象,是应用某一对象的一个方法,语法为“apply(thisobj,[argarray])”;参数argarray表示的是以数组的形式进行传递。

jquery怎么删除div内所有子元素jquery怎么删除div内所有子元素Apr 21, 2022 pm 07:08 PM

删除方法:1、用empty(),语法“$("div").empty();”,可删除所有子节点和内容;2、用children()和remove(),语法“$("div").children().remove();”,只删除子元素,不删除内容。

jquery on()有几个参数jquery on()有几个参数Apr 21, 2022 am 11:29 AM

on()方法有4个参数:1、第一个参数不可省略,规定要从被选元素添加的一个或多个事件或命名空间;2、第二个参数可省略,规定元素的事件处理程序;3、第三个参数可省略,规定传递到函数的额外数据;4、第四个参数可省略,规定当事件发生时运行的函数。

jquery怎么去掉只读属性jquery怎么去掉只读属性Apr 20, 2022 pm 07:55 PM

去掉方法:1、用“$(selector).removeAttr("readonly")”语句删除readonly属性;2、用“$(selector).attr("readonly",false)”将readonly属性的值设置为false。

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

WebStorm-Mac-Version

WebStorm-Mac-Version

Nützliche JavaScript-Entwicklungstools

mPDF

mPDF

mPDF ist eine PHP-Bibliothek, die PDF-Dateien aus UTF-8-codiertem HTML generieren kann. Der ursprüngliche Autor, Ian Back, hat mPDF geschrieben, um PDF-Dateien „on the fly“ von seiner Website auszugeben und verschiedene Sprachen zu verarbeiten. Es ist langsamer und erzeugt bei der Verwendung von Unicode-Schriftarten größere Dateien als Originalskripte wie HTML2FPDF, unterstützt aber CSS-Stile usw. und verfügt über viele Verbesserungen. Unterstützt fast alle Sprachen, einschließlich RTL (Arabisch und Hebräisch) und CJK (Chinesisch, Japanisch und Koreanisch). Unterstützt verschachtelte Elemente auf Blockebene (wie P, DIV),

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

PHPStorm Mac-Version

PHPStorm Mac-Version

Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool

MinGW – Minimalistisches GNU für Windows

MinGW – Minimalistisches GNU für Windows

Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.