2016-08-04 1 views
0

メインページにボタンを作成して別のページからモーダルを呼び出そうとしています。ブートストラップモーダルを含むajaxページをロードし、そのモーダルを一斉に起動します

このモーダルは、ロード後に自動的に起動する必要があります。

私はそれについて何も見つかりませんでした。 (または私は?!それを逃した)

私のコード:

私はこれが機能JS呼んでいる:

<script> 
function startb(plc) 
{ 
    $.ajax({ 
      url: "gb.php?plc="+plc 
      }).done(function(data) { 
      $("#large-div").html(data); 
      }); 

    //the id of the modal in the gb.php code is: "inside-modal" 
     $('#inside-modal').modal('show'); 

} 
</script> 

<body> 

<div id="large-div" name="large-div"> 

</div> 

<button onclick="startb('28')">start plc</button> 



</body> 
+0

あなたが試したことを私に教えてください。あなたが欠けているものを理解するのを手伝ってくれることを嬉しく思います。 – technophobia

+0

ajaxロードしたいページを作成し、ajaxが完了したらモーダルに値を設定します。それは非常に簡単です。 – noob

+0

コードを挿入しました。ありがとう! – user3495363

答えて

2

あなたは$()モーダル()関数呼び出しを配置する必要がありますが。 ajaxリクエストのコールバック関数内で

AJAXは非同期であるため、

.modal()
の呼び出しはdivに実際に新しいHTMLコンテンツが取り込まれる前に発生します。

ソリューション:

$.ajax({ 
     url: "gb.php?plc="+plc 
     }).done(function(data) { 
     $("#large-div").html(data); 
     $('#inside-modal').modal('show'); 
     }); 

それは

編集ホープ:ディミトリスNastos @

を、あなたのコメントを見ていない - この答えと全く同じ。コメントをupvoteします。

+0

Thanx!出来た。前に - 私はajax呼び出しの外や別の関数からのような別の場所からモーダルを呼び出してみました。私は、たとえajax呼び出しが完了した後でもjsコードが作成されなかったため、ajax呼び出し内から呼び出すことは可能ではないと思っていました(私は、ページの追加が完了したら警告を確認しました)。私を驚かせました - しかしそれは働いています - 高校!!! upvoted! – user3495363

関連する問題