簡體   English   中英

ASP.NET MVC3 Ajax.ActionLink - 條件確認對話框

[英]ASP.NET MVC3 Ajax.ActionLink - Conditional confirmation dialog box

我有一個@ Ajax.ActionLink,只有在滿足某些條件(用戶有未保存的更改)時才會顯示確認對話框。 我創建了一個javascript函數,根據需要顯示確認對話框,並根據響應返回true或false。 我將它綁定到ActionLink的onclick事件,但是錯誤的結果不會取消操作。 這是我的代碼示例:

@Ajax.ActionLink("Done", .. , .. , 
                  new AjaxOptions() { UpdateTargetId = "MyContainerId"},
                  new { onclick = "ConfirmDone()" })

這是javascript函數

function ConfirmDone() {
    //for testing purposes we can always show the dialog box
    return confirm("Are you sure you want to lose unsaved changes?");
}

顯示Ajax.ActionLink的條件確認對話框的最佳方法是什么?

使用OnBegin事件:

@Ajax.ActionLink("Done", "ActionName", 
    new AjaxOptions 
    { 
        OnBegin = "return ConfirmDone()", 
        UpdateTargetId = "MyContainerId" 
    })

如果您只需要彈出一個確認框,也可以使用Confirm ajax選項。 如果您需要執行更多自定義邏輯(或想要使用自定義對話框),則需要使用OnBegin。

以下是使用確認的示例:

@Ajax.ActionLink("Done", "ActionName", 
    new AjaxOptions 
    { 
        Confirm= "Are you sure you want to do this?", 
        UpdateTargetId = "MyContainerId" 
    })

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM