2017-07-27 5 views
1

Ich arbeite mit ng-Datei-Upload, um mit Bildern zu arbeiten. In ja, ich habe zwei Möglichkeiten, um ein Bild für jeden zu laden. Bei der Anzeige wird das erste Bild in meinem ersten ng-Modell angezeigt, aber wenn ich mein zweites Bild in meinem zweiten ng-Modell anzeige, wird es nicht angezeigt, aber es ist vorbei mein erstes ng-Modell zu schreiben. Dann habe ich meine HTML-Ansicht teilen:Fehler beim Anzeigen der Bildvorschau in angularjs

<div class="row"> 
    <div class="col s12 m12 hide-on-med-and-down"> 
     <div class="image-upload"> 
     <label for="file-input"> 
      <i class="material-icons left teal-text">photo_camera</i> 
      Agrega imagen 1... 
     </label> 
     <input 
      id="file-input" 
      type="file" 
      ngf-select 
      ng-model="data.imagen_promocion" 
      name="file" 
      ngf-pattern="'image/*'" 
      accept="image/*" 
      ngf-max-size="3MB" 
     /> 
     </div> 
     <img ngf-thumbnail="data.imagen_promocion || '/thumb.jpg'"/> 
    </div> 
    <div class="col s12 m12 hide-on-med-and-down"> 
     <div class="image-upload"> 
     <label for="file-input"> 
      <i class="material-icons left teal-text">photo_camera</i> 
      Agrega imagen 2... 
     </label> 
     <input 
      id="file-input" 
      type="file" 
      ngf-select 
      ng-model="data.imagen_promocion2" 
      name="file" 
      ngf-pattern="'image/*'" 
      accept="image/*" 
      ngf-max-size="3MB" 
     /> 
     </div> 
     <img ngf-thumbnail="data.imagen_promocion2 || '/thumb.jpg'"/> 
    </div> 
    </div> 

ich meine Fehler gesehen habe, ist in CSS:

.image-upload > input{ 
    display: none; 
} 
.image-upload i{ 
    font-size: 30px; 
    cursor: pointer; 
} 

Wenn ich diese CSS Stil löschen es funktioniert gut. das ist mein jsfiddle

Wie kann ich diesen Fehler beheben? Ich danke Ihnen im Voraus

+0

Versuchen Sie, Ihre ID zu ändern und Name für die zweite Datei Eingabe in verschiedene Namen – Vivz

+0

Ich bekomme den gleichen Fehler @Vivz –

+0

Sieht korrekt aus, wenn Sie die ID aktualisiert haben, um eindeutig zu sein, können Sie mehr Code auf einem PLNKR zeigen? –

Antwort

0

Obwohl Ihre Geige gut funktioniert, gibt es ein Problem mit der Bezeichnung Nutzung ist:

<label for="file-input"> 
<input id="file-input"> 

Paar sollte eindeutig sein, sollten Sie nicht doppelte Paare schreiben. Es wird dort ein Problem verursachen.

Ändern Sie den Etiketten Eingang unten Stile, ich denke, es wird das Problem lösen:

<label for="file-input-1"></label> 
<input id="file-input-1"></input> 

<label for="file-input-2"></label> 
<input id="file-input-2"></input> 

Es scheint in Ordnung, wenn ich auf der Geige versucht:

enter image description here

+0

Mein Freund, der wahr ist, aber ich habe meinen Fehler gefunden, wenn Sie helfen können? Ich werde meine Frage bearbeiten –

+0

Haben Sie die Label-ID und die Eingabe für ein eindeutiges Paar geändert? –

+0

ja aber das ist nicht der fehler, der fehler ist in meinem css, wenn ich meine CSS lösche alles funktioniert gut –