Ich habe ein Bootstrap-modal und, in ihm, ich habe eine UI-Auswahl zum Taggen. Hier ist mein Beispiel:anklickbarer Bereich von ui-select innen ist 10px ein Bootstrap modal
<div class="modal modal-invite">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<ui-select multiple tagging tagging-label="" ng-model="email_list" theme="bootstrap" ng-disabled="disabled" on-select="" on-remove="" title="Insert your friends email here." >
<ui-select-match placeholder="Your friends email here...">{{$item}}</ui-select-match>
<ui-select-choices repeat="email in email_list | filter:$select.search">
{{email}}
</ui-select-choices>
</ui-select>
</div>
<div class="modal-footer">
<button class="btn btn-success">Invite</button>
</div>
</div>
</div>
</div>
Mein Problem ist: Wenn ich das modale mit $('modal-invite').modal('show')
öffnen, die Größe des Platzhalter (und den klickbaren Bereich) 10 Pixel, wie folgt aus:
Nach dem Klicken wird die richtige Breite angezeigt.
Wie kann ich die Größe von ui-select aktualisieren, wenn das Modal geöffnet wird?
Haben Sie versucht, ui-select Initialisierung in modal geöffnet Rückruf zu setzen? Es scheint, dass, wenn Modal zum ersten Mal geöffnet wird, ui-select noch nicht initialisiert ist. –
@DmitryS Ok, vielleicht habe ich die Lösung gefunden. Ich habe versucht: '$ ('modal-invite') .modal ('show')' und dann '$ scope. $ Apply();', und das scheint zu funktionieren! – ProGM
Wahrscheinlich, weil, wie Dmitry sagte, die ui-Auswahl wird noch nicht angezeigt, wenn die Seite geladen ist. – eHx