Подтвердить что ты не робот

Как я могу запустить программный код Bootstrap?

Если я пойду сюда

http://getbootstrap.com/2.3.2/javascript.html#modals

И нажмите "Запустить демо-мода", он делает ожидаемую вещь. Я использую modal как часть моего процесса регистрации, и есть проверка на стороне сервера. Если есть проблемы, я хочу перенаправить пользователя к тому же модалю с отображаемыми сообщениями о проверке. На данный момент я не могу понять, как получить модальный дисплей, кроме физического щелчка пользователя. Как я могу запустить модель программно?

4b9b3361

Ответ 1

Чтобы вручную показать модальное всплывающее окно, вы должны сделать это

$('#myModal').modal('show');

Ранее вам нужно было инициализировать его с помощью show: false чтобы он не отображался, пока вы не сделаете это вручную.

$('#myModal').modal({ show: false})

Где myModal - это идентификатор модального контейнера.

Ответ 2

Вы должны написать data-toggle = "modal" в элементе, который вызвал модальный (например, кнопку), и вы вручную можете показать модальный:

$('#myModal').modal('show');

и скрыть:

$('#myModal').modal('hide');

Ответ 3

Если вы ищете программное модальное создание, вам может понравиться следующее:

http://nakupanda.github.io/bootstrap3-dialog/

Несмотря на то, что Bootstrap modal предоставляет javascript для модального создания, вам все равно нужно сначала написать модальные html-разметки.

Ответ 4

HTML

<!-- Button trigger modal -->
<button type="button" class="btn btn-primary btn-lg">
  Launch demo modal
</button>

<!-- Modal -->
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
  <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">&times;</span></button>
        <h4 class="modal-title" id="myModalLabel">Modal title</h4>
      </div>
      <div class="modal-body">
        ...
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
        <button type="button" class="btn btn-primary">Save changes</button>
      </div>
    </div>
  </div>
</div>

JS

$('button').click(function(){
$('#myModal').modal('show');
});

DEMO JSFIDDLE

Ответ 5

вы можете показать модель через jquery (javascript)

$('#yourModalID').modal({
  show: true
})

Демо: здесь

или вы можете просто удалить класс "Скрыть"

<div class="modal" id="yourModalID">
  # modal content
</div>

Ответ 6

Я хотел сделать это способом angular (2/4), вот что я сделал:

<div [class.show]="visible" [class.in]="visible" class="modal fade" id="confirm-dialog-modal" role="dialog">
..
</div>'

Важные вещи для заметки:

  • visible - это переменная (логическое значение) в компоненте, которая управляет модальной видимостью.
  • show и in являются классами начальной загрузки.

Пример компонента & HTML

Компонент

@ViewChild('rsvpModal', { static: false }) rsvpModal: ElementRef;
..
@HostListener('document:keydown.escape', ['$event'])
  onEscapeKey(event: KeyboardEvent) {
    this.hideRsvpModal();
  }
..
  hideRsvpModal(event?: Event) {
    if (!event || (event.target as Element).classList.contains('modal')) {
      this.renderer.setStyle(this.rsvpModal.nativeElement, 'display', 'none');
      this.renderer.removeClass(this.rsvpModal.nativeElement, 'show');
    }
  }
  showRsvpModal() {
    this.renderer.setStyle(this.rsvpModal.nativeElement, 'display', 'block');
    this.renderer.addClass(this.rsvpModal.nativeElement, 'show');
  }

Html

<!--S:RSVP-->
<div class="modal fade" #rsvpModal role="dialog" aria-labelledby="niviteRsvpModalTitle" (click)="hideRsvpModal($event)">
    <div class="modal-dialog modal-dialog-centered modal-dialog-scrollable" role="document">
        <div class="modal-content">
            <div class="modal-header">
                <h5 class="modal-title" id="niviteRsvpModalTitle">

                </h5>
                <button type="button" class="close" (click)="hideRsvpModal()" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
                </button>
            </div>
            <div class="modal-body">

            </div>
            <div class="modal-footer">
                <button type="button" class="btn btn-secondary bg-white text-dark"
                    (click)="hideRsvpModal()">Close</button>
            </div>
        </div>
    </div>
</div>
<!--E:RSVP-->

Ответ 7

Следующий код полезен для открытия модальной функции openModal() и закрытия для closeModal():

      function openModal() {
          $(document).ready(function(){
             $("#myModal").modal();
          });
      }

     function closeModal () {
          $(document).ready(function(){
             $("#myModal").modal('hide');
          });  
      }

/* #myModal - это идентификатор модального всплывающего окна */