2015-12-06 29 views
2

我正在嘗試創建一個確認用戶想要繼續的對話框。 情況是這樣的:我有一個可能發生事件的表格。用戶可以決定刪除該事件。使用AngularJS確認對話框中的數據

表是建立這樣的:

<tbody> 
    <tr ng-repeat="event in EventsCtrl.events> 
     <td> 
      <a ng-click="event.updateStatusDone(event.eventid)" href="#"> 
       <i class="delete-icon"></i> 
      </a> 
     </td> 
     <td>{{event.timestamp}}</td> 
     <td>{{event.date}}</td> 
     ... 

控制器相關的代碼如下所示:

app.controller('EventController', ['$http', function($http){ 
    this.updateStatusDone = function(eventid){ 
     $http.delete(serverUrl + "/manage/event/" + eventid); 
    } 
} 

現在我想添加一個確認框(我讀到模式),那會要求用戶確認。 eventid必須通過。

我已經嘗試了很多關於模態的研究,但他們似乎都提醒了,沒有傳遞所需的數據(在這種情況下爲eventid)。

有沒有人有一個工作的例子?一個領導,給一些參考?

在此先感謝!

回答

0

我找到的最好的事情,到目前爲止,以適合我這裏的情況: https://stackoverflow.com/a/19930247/5459561

它實際上調用只有接受了我的功能。 有一點要記住,它不是一個好看的對話框,該部分仍然需要工作。

0

下面是部分例子,讓你開始,從東西我寫道:

function createMessageBox($dialog, title, message, buttons) { 
    var msgBox = $dialog.dialog({ 
     templateUrl: 'partials/dialogs/message_dialog.html', 
     controller: 'MessageBoxController', 
     backdrop: false, 
     dialogClass: 'modal confirm-dialog movable', 
     resolve: { 
      model: function() { 
       return { 
        title: title, 
        message: message, 
        buttons: buttons 
       }; 
      } 
     } 
    }); 

    return msgBox; 
} 

正如你可以看到我經過titlemessagebuttons變量,然後再使用他們在message_dialog.html對話框。

+0

我是否需要爲此創建一個對話框指令?還是我錯過了別的?我是否需要通過對話框的按鈕調用我的功能? – Finkel

+0

你只需用'msgBox.open()'打開它,然後你就可以從它返回參數,當對話框關閉時,'.then()'會觸發。 – AlexD

+0

對不起,我是新來的角,我覺得我失去了一些東西。開放功能在哪裏?也許你有一個工作小提琴/ plunker?不好意思問這麼多,但它似乎不適合我 – Finkel