如何处理用户对确认的响应

时间:2013-09-09 15:11:16

标签: c# .net asp.net-mvc-4 actionlink

我有一个操作,如果当前对象有子节点,则应该提示用户。用户也应该能够选择更新孩子。如何处理用户响应此提示?

<tr>
            <td><button type="submit" class="button">Save</button></td>
            @if (Model.OrganizationHasChildren)
            {
                <td>@Html.ActionLink("Save", "AleMasterData", null, new {@class = "button",onclick = "return confirm('Do you want to apply the ALE Indicator change to the sub-clients also?');" })</td>
            }
            else
            {
                <td>@Html.ActionLink("Save", "AleMasterData", null, new {@class = "button"})</td>
            }
        </tr>

1 个答案:

答案 0 :(得分:1)

最简单的选项,使用额外的布尔值构建一个ViewModel,它将在标记中用以下内容表示:

@Html.HiddenFor(model => model.ChoiceBool) 

并用一点Jquery

更新它
    function submitForm() {
        var l_choice = confirm('Do you want to apply the ALE Indicator change to the sub-clients also?');
        $('#ChoiceBool').val(l_choice);              
        $('#SaveForm').submit();
    }

当然

        @if (Model.OrganizationHasChildren)
        {
            <td>@Html.ActionLink("Save", "AleMasterData", null, new {@class = "button", onclick = "submitForm();" })</td>
        }
        else
        {
            <td>@Html.ActionLink("Save", "AleMasterData", null, new {@class = "button"})</td>
        }

然后你应该能够在动作服务器端检索它

或者您可以使用选择值更新同一JS方法中的URL,并使用原型检索服务器端

 public ActionResult Save(bool choice, ViewModel viewModel)

但是对于相同的结果来说这更复杂,如果你想尝试第二种选择,那么研究会更多