2011-09-14 12 views
0

ページ内に複数のダイアログボックスを表示しようとすると問題が発生します。私は3つのタグをクリックすると3つのアンカータグを持っています。異なる内容のダイアログボックスを生成する必要があります。しかし、私は2番目のタグをクリックしたとき、前のものと同じダイアログボックスが表示されますか?ダイアログボックス内のコンテンツを更新するにはどうすればよいですか?JQuery UIダイアログボックスの内容を更新しますか?

何私が行っている

$("a.delete").click(function (event) { 
     DialogBox('#DeleteConfirm'); 
}); 

    $("a.message").click(function (event) { 
      DialogBox('#DeleteConfirm'); 
    }); 

var $dialog = null; function dialog() { 
    // create dialog if not done already 
    if (!$dialog) { 
     $dialog = $("#dialogToShow").dialog({ 
      title: "Confirm Password", 
      closeText: "Cancel", 
      show:"slide", 
      resizable: false, 
      modal: true, 
      autoOpen: false, // this is important! prevent auto open 
      open: function(ev, ui){ 
       $('.ui-widget-overlay').stop().animate({"opacity": "0.40"}, 1480); 
      }, 
      close: function(ev, ui){ 
       $('.ui-widget-overlay').stop().animate({"opacity": "0"}, 1480); 
      }     
     }); 
    } 
    // use the reference to the dialog and call open. 
    $dialog.dialog('open'); 
    return false; } 

の下に与えられていることは誰も私を助けることができますか?あなたがかなっ行っているはずですし、私が正しくあなたを理解している場合、別途

それらを呼び出す -

+0

あなたのDialogBox機能は何をしていますか?コードにはありません – dioslaska

答えて

1

あなたはその後、それぞれのケースに個別のダイアログを作成する必要があります。 like

$("a.delete").click(function (event) { 
    dialog($('#DeleteDialog'), "Confirm Password"); 
); 

$("a.message").click(function (event) { 
     dialog($('#MessageDialog'), "Message"); 
}); 

function dialog(content, title) { 
    $(content).dialog({ 
     title: title, 
     closeText: "Cancel", 
     show:"slide", 
     resizable: false, 
     modal: true, 
     //autoOpen: false, // this is important! prevent auto open 
     open: function(ev, ui){ 
      $('.ui-widget-overlay').stop().animate({"opacity": "0.40"}, 1480); 
     }, 
     close: function(ev, ui){ 
      $('.ui-widget-overlay').stop().animate({"opacity": "0"}, 1480); 
     }     
    }); 
} 
関連する問題