Mais
Bootstrap 3 - Como carregar conteúdo no corpo modal via AJAX?
Como você pode ver aqui, eu tenho um botão que lança um modal. Configurando um href url para o botão este url é automaticamente carregado no modal pelo Bootstrap 3. O fato é que esta página é carregada na raiz modal (como dito na documentação bootstrap 3 para uso modal). Eu quero carregá-la no modal-corpo em vez disso.
Existe uma forma de o fazer através de atributos (não javascript)? Ou qual é a forma mais automática de o fazer?
P.S. Lembro-me que no Bootstrap 2 o conteúdo estava carregado no corpo, não na raiz.
71
3
Isto é realmente super simples com apenas um pouco de javascript adicional. O link's href é usado como a fonte de conteúdo ajax. Note que para o Bootstrap 3.* nós definimos
data-remote="false"
para desabilitar a função deprecated Bootstrap load function.JavaScript:
Html (baseado em o exemplo oficial):
Experimente você mesmo: https://jsfiddle.net/ednon5d1/
Verifique esta resposta de SO out.
Parece que a única maneira é fornecer toda a estrutura modal com a sua resposta ajax.
Como você pode verificar no bootstrap código fonte, a função de carga está ligada ao elemento raiz.
Caso você possa't modificar a resposta ajax, uma simples volta de trabalho poderia ser uma chamada explícita do
$(...).modal(...)
plugin no seu elemento de corpo, mesmo que provavelmente irá quebrar as funções show/hide do elemento raiz.Eu acho que você'está procurando por esta função personalizada. Ela pega um atributo data-toggle e cria dinamicamente o mergulho necessário para colocar o conteúdo remoto. Basta colocar o data-toggle="ajaxModal" em qualquer link que você queira carregar via AJAX.
A parte do JS:
Finalmente, no conteúdo remoto, você precisa colocar toda a estrutura para funcionar.