2016-07-23 7 views
0
<form> 
     <div ng-if="record.title" class="customClasses" ng-repeat="record in $.basevm.recordsperPage"> 
      <manycustomDirective data-record="record"></manycustomDirective> 
     </div> 
</form> 

Mehrere Datensätze werden geladen mit der obigen benutzerdefinierten Anweisung und es gibt mehrere Seiten.ng-Modell von <select> in einer benutzerdefinierten Richtlinie wird nicht in IE gespeichert, funktioniert in Chrome und Firefox

Diese manycustomDirective.cshtml wieder hat einige weitere benutzerdefinierte Richtlinie wie unten, die Dropdown-Listen mit "wählen Sie"

<single-choice ng-if="record.type == 1" data-record="record" ></single-choice> 
<multi-choice ng-if="record.type == 2" data-record="record" ></multi-choice> 

In Single-Choice-Richtlinie der cshtml Datei zeigt, ich habe select + Optionen

<select class="customclassdeginedinLESS" ng-model="record.id" > 
      <option value=""></option> 
      <option value="{{choice.id}}" ng-repeat="choice in record.choices">{{ choice.text }}</option> 
     </select> 

Ausgabe

Für IE, nur einen Wert von allen Seiten und benutzerdefinierte Richtlinien ist bekommt sav ed aber in Chrom und FF wird alles gespeichert.

Ich habe versucht, Track von Choice.id und verfolgen von $ Index, aber es hat nicht funktioniert. Versuchen, einen Listener auf ng-Änderung der Auswahl innerhalb der "Link" -Funktion der CUSTOM-Direktive zu schreiben, habe ich scope.ngModel einen festcodierten Wert zugewiesen, aber es funktioniert trotzdem nicht.

 link(scope: any, element: any, attrs: ng.IAttributes) { 

      scope.ngchangeListener= function (item) { 

      scope.ngModel = '00000000'; 

      } 
+0

können Sie den Code für manycustomDirective zur Verfügung stellen? Ihre Frage ist über ein Problem mit