Wie setze ich das ID-Attribut eines HTML-Elements dynamisch mit angularjs (1.x)?

Hat ein HTML-Element vom Typ div , wie legt man den Wert seines id Attributs fest, das die Verkettung einer Bereichsvariablen und eines Strings ist?

   

ngAttr Direktive kann hier völlig helfen, wie in der offiziellen Dokumentation eingeführt

https://docs.angularjs.org/guide/interpolation#-ngattr-for-binding-to-arbitrary-attributes

Um beispielsweise den id Attributwert eines div Elements so div , dass es einen Index enthält, könnte ein Ansichtsfragment enthalten sein

 

das würde interpoliert werden

 

Diese Sache hat für mich ganz gut funktioniert:

Ein eleganterer Weg, um dieses Verhalten zu erreichen, ist einfach:

 

Für meine Implementierung wollte ich, dass jedes Eingabeelement in einer ng-Wiederholung mit einer eindeutigen ID verknüpft ist, um das Label zu verknüpfen. Für ein Array von Objekten, die in myScopeObjects enthalten sind, könnte man dies tun:

 

In der Lage zu sein, einzigartige IDs im laufenden Betrieb zu erzeugen, kann sehr nützlich sein, wenn Inhalte wie diese dynamisch hinzugefügt werden.

Sie könnten einfach Folgendes tun

In deinem js

 $scope.id = 0; 

In deiner Vorlage

 

was rendern wird

 

Es ist nicht notwendig, innerhalb doppelter geschweifter Klammern zu verketten.

Falls Sie zu dieser Frage gekommen sind, aber mit der neueren Angular Version> = 2.0 .

 

Wenn Sie diese Syntax verwenden:

 

Angular wird Folgendes wiedergeben:

  

Jedoch diese Syntax:

 

wird etwas erzeugen wie: