2011-12-20 8 views
0

私は保存ボタンがあるjqueryモーダルダイアログを呼び出しています。保存ボタンを押すとajaxが呼び出され、成功するとOKボタンで「データ保存済み!」というアラートボックスが表示されます。アラートボックスを表示した後、jQueryモーダルダイアログをオートクローズします。

"データ保存済み"アラートボックスを閉じた後、以前に呼び出されたモーダルダイアログも自動的に閉じたいと思います。

$("#addFriendButton").click(function() { 

     $("#addNewFriend").dialog({ 
      title: 'Add a new friend.', 
      height:'auto', 
      width:'auto', 
      modal: true 
     }); 


    }); 
    //end addFriendButton 

    $("#saveNewFriendButton").click(function() { 

     $.ajax({ 
      type: "POST", 
      contentType: "application/json; charset=utf-8", 
      url: "/api/bb/apiV1/addFriend", 
      data: formToJSON(), 
         dataType: "json", 
      success: function(responseDTO){ 

         displayOKAlertBox(responseDTO.responseMessage); 

      } 
     }); 


    }); 

    function displayOKAlertBox(message){ 

     $("#alertMsg").html(message); 

     $("#alertbox").dialog({ 
      modal: true, 
      buttons: { 
       Ok: function() { 
        $(this).dialog("close"); 
       } 
      } 
     }); 

    } 

答えて

1

次のことを試してみてください。

$("#alertbox").dialog({ 
     modal: true, 
     buttons: { 
      Ok: function() { 
       $('.ui-dialog').dialog('close'); 
      } 
     } 
}); 
+0

それは働いた。すべてのダイアログが閉じられました。 – cherit

0

私はそれを行うだろうと思うが、多分私が間違ってる次

$("#saveNewFriendButton").click(function() { 

    $.ajax({ 
     type: "POST", 
     contentType: "application/json; charset=utf-8", 
     url: "/api/bb/apiV1/addFriend", 
     data: formToJSON(), 
        dataType: "json", 
     success: function(responseDTO){ 

        displayOKAlertBox(responseDTO.responseMessage); 
        $("#alertbox").dialog("close"); 

     } 
    }); 


}); 

をお試しください!

+0

私が閉じたいダイアログは、$( "#addNewFriend").Dialog で、$( "#alertbox").dialogではなく、 – cherit

+0

そうです。 –