Как создать оповещение о подтверждении Да / Нет с MvcHtmlString в MVC C# - PullRequest
0 голосов
/ 29 марта 2020

Следующий код отображает предупреждение через MvcHtmlString.

в C#

public static MvcHtmlString ShowAlert(this HtmlHelper helper, string message)
{
     StringBuilder sb = new StringBuilder();

     sb.Append(@"$.confirm({" +
                      "title: false," +
                      "content: '" + message + "'," +
                      "type: 'dark'," +
                      "boxWidth: '45%'," +
                      "animation: 'RotateY',closeAnimation: 'RotateY',rtl: true," +
                      "typeAnimated: true," +
                      "buttons:" +
                      "{Close: {" +
                      "btnClass: 'btn-blue'} }});");

     return MvcHtmlString.Create(sb.ToString());
}

в скрипте

<script type="text/javascript">
        $('#bSubmit').click(event,
            function() {
                event.preventDefault();
                @Html.ShowAlert("Test");
            });
</script>

enter image description here

Я хочу отобразить предупреждение в MvcHtmlString , равном Yes/No, и возвращает нажатые кнопки, чтобы я мог использовать значение в скрипте.

Ответы [ 2 ]

0 голосов
/ 29 марта 2020

Вы можете создать библиотеку javascript общих функций в вашем приложении и включить в нее диалог подтверждения. Таким образом, вы можете использовать возвращаемое значение диалогового окна подтверждения в скрипте в качестве обратного вызова.

site. js:

function showConfirm(message, clickCallback) {
    $.confirm({
        title: false,
        content: message,
        type: 'dark',
        boxWidth: '45%',
        animation: 'RotateY',
        closeAnimation: 'RotateY', 
        rtl: true,
        typeAnimated: true,
        buttons: { 
            Close: function () {
                clickCallback("Close");
            }
        } 
    });
}

Имена кнопок могут быть вставлены в функцию в качестве другого параметра, например:

function showConfirmWithMultipleButtons(message, buttons /* array of names */, clickCallback)

Использование:

showConfirm('Simple confirm message', function(buttonName) {
    $.alert(buttonName);
});
0 голосов
/ 29 марта 2020

Я предлагаю вам использовать alerttify https://alertifyjs.com/, у него есть свои собственные функции для создания того, что вы запрашиваете, его легко использовать, вам просто нужно написать новую строку MvcHtmlString, которая пишет это :

alertify.confirm('Confirm Title', 'Confirm Message', function(){ alertify.success('Ok') }
                , function(){ alertify.error('Cancel')});

Вы можете найти примеры и документацию по данной ссылке

...