Bei mir $('#someid').prop('disabled', true);funktioniert das nicht, aber es $('#someid').attr('disabled', true);funktioniert gut.
Vukašin Manojlović
4
Stimme @ VukašinManojlović zu .. für mich das gleiche.
Sstauross
3
Bevor Sie sich entscheiden, ob Sie attroder verwenden möchten prop, ist es wichtig, den Unterschied zwischen Eigenschaften und Attributen zu verstehen. Ohne den Unterschied zu verstehen, werden Sie wahrscheinlich auf unerwartetes Verhalten stoßen. Siehe stackoverflow.com/a/6004028/3367343
Travis Hohl
Kann Prop jetzt als Ersatz für attr verwendet werden? oder wird es nur in besonderen Fällen verwendet?
Chaudhry Waqas
41
Beste Lösung: Ab jQuery v1.6 können Sie mit prop () eine Eigenschaft hinzufügen
Beachten Sie außerdem, dass die Methode .removeProp () nicht verwendet werden sollte, um diese Eigenschaften auf false zu setzen. Sobald eine native Eigenschaft entfernt wurde, kann sie nicht mehr hinzugefügt werden. Weitere Informationen finden Sie unter .removeProp ().
$("element").prop("id","modifiedId");//for boolean
$("element").prop("disabled",true);//also you can remove attribute
$('#someid').removeProp('disabled');
Attribute und Eigenschaften sind nicht genau gleich. Zum Beispiel ist "id" ein Attribut, keine Eigenschaft. Sie verwenden, .attr()um es einzustellen oder zu lesen. Siehe den Abschnitt "Attribute vs. Eigenschaften" unter .prop () und .attr () in den jQuery-Dokumenten. Siehe auch die Antwort von Paul Rosania oben.
Es wäre schöner, wenn Sie eine Erklärung haben könnten
Mooga
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> Fügen Sie einfach den jQuery-Link nach dem Schreiben des Codes ein. Text innerhalb des $ -Symbols Wählen Sie alle Elemente mit id = someid aus. Das deaktivierte Attribut dieser ID ändert sich in true
Antworten:
Sie können Attribute
attr
wie folgt hinzufügen :Doch für DOM - Eigenschaften wie
checked
,disabled
undreadonly
die richtige Art und Weise , dies zu tun (wie von JQuery 1.6) zu verwendenprop
.quelle
$('#someid').prop('disabled', true);
funktioniert das nicht, aber es$('#someid').attr('disabled', true);
funktioniert gut.attr
oder verwenden möchtenprop
, ist es wichtig, den Unterschied zwischen Eigenschaften und Attributen zu verstehen. Ohne den Unterschied zu verstehen, werden Sie wahrscheinlich auf unerwartetes Verhalten stoßen. Siehe stackoverflow.com/a/6004028/3367343Beste Lösung: Ab jQuery v1.6 können Sie mit prop () eine Eigenschaft hinzufügen
Verwenden Sie zum Entfernen
removeProp()
Reference
quelle
Sie können dies mit der
.attr
Funktion von jQuery tun, mit der Attribute festgelegt werden. Das Entfernen erfolgt über die.removeAttr
Funktion.quelle
quelle
quelle
quelle
Attribut hinzufügen als:
quelle
Dies könnte hilfreicher sein ....
quelle
.attr()
um es einzustellen oder zu lesen. Siehe den Abschnitt "Attribute vs. Eigenschaften" unter .prop () und .attr () in den jQuery-Dokumenten. Siehe auch die Antwort von Paul Rosania oben.quelle
Verwenden Sie diesen Code
<script> $('#someid').attr('disabled,'true'); </script>
quelle
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
Fügen Sie einfach den jQuery-Link nach dem Schreiben des Codes ein. Text innerhalb des $ -Symbols Wählen Sie alle Elemente mit id = someid aus. Das deaktivierte Attribut dieser ID ändert sich in true