Кнопка диалога JQuery теперь не скрывается. Я преобразовал свой вид в сетку Telerik.

1

У меня есть ссылка на моем представлении, которая открывает диалоговое окно JQuery с просьбой подтвердить действие, при нажатии кнопки ok диалог изменяется на сообщение либо с успехом, либо с ошибкой.

Это работает так, как ожидалось, и действие также работает. Однако, как только кнопка ok нажата, эта кнопка должна быть скрыта от просмотра, и после преобразования стандартного представления списка mvc в элемент управления сеткой Telerik скрытие кнопки больше не функционирует, но все остальное все еще работает, как описано.

Я не знаю, как задать вопрос в Google, чтобы выявить требуемый ответ, поскольку все ответы указывают на совершенно другую проблему, я также спросил некоторых из старших разработчиков в моей команде, и никто раньше не сталкивался с этим раньше.

Может кто-нибудь сказать мне, что случилось с JQuery и как противодействовать ему, пожалуйста? помощь будет очень высоко оценена.

Вид бритвы:

@model IEnumerable<BUUK.BSS.Models.ADTeamMemberEntry>

@{
    ViewBag.Title = "MyTeam";
}
<h2>@ViewBag.Title</h2>
<h3>@ViewBag.Message</h3>




@(Html.Kendo().Grid(Model).Name("TeamMember").Columns(c =>
{
    c.Bound(tm => tm.FullName);
    c.Bound(tm => tm.JobTitle);
    c.Bound(tm => tm.Department);
    c.Bound(tm => tm.Email);
    c.Template(
        @<text>
            @Html.ActionLink("User Details", "UserDetails", "User", new { userName = item.UserName }, null)
        </text>
        );
    })
)




<p>@Html.ActionLink("Create Review", "CreateReview", "Home", new { @class = "createReview" })</p>


<div style="display:none">
    @Html.Partial("CreateReview")

</div>

@section Scripts {
    <script src="~/Scripts/confirmDialog.js"></script>
    <script src="~/Scripts/createReview.js"></script>
    <link href="~/Content/jquery-ui-1.11.1.css" rel="stylesheet" />
    <link rel="stylesheet" href="//code.jquery.com/ui/1.11.1/themes/smoothness/jquery-ui.css" />
}

Диалог JQuery:

$(function () {
    $(".createReview").click(function (e) {
        e.preventDefault();
        var url = $(this).attr('href');

        $("#create-review .CreateReviewSuccessMessage").hide();
        $("#create-review .CreateReviewFailureMessage").hide();

        $("#create-review").dialog({
            resizable: false,
            width: 425,
            modal: true,
            buttons: {
                "OK": function () {

                    /*GET*/
                    $.ajax({
                        url: url,
                        type: "GET",
                        async: true,
                        processData: false,
                        cache: false,
                        success: function (data) {
                            $("#create-review .CreateReviewConfirmDialog").hide();
                            $("#create-review .CreateReviewSuccessMessage").show();
                            $('.ui-button:contains("OK")').hide();
                            $('.ui-button:contains("Cancel")').find('span').text("Close");

                        },
                        error: function (xhr) {
                            $("#create-review .CreateReviewConfirmDialog").hide();
                            $("#add-user-role .CreateReviewFailureMessage").show();
                            $('.ui-button:contains("OK")').hide();
                            $('.ui-button:contains("Cancel")').find('span').text("Close");
                        }
                    });
                },
                "Cancel": function () {
                    $(this).dialog("close");
                    $("#create-review .CreateReviewConfirmDialog").show();
                    $("#create-review .CreateReviewSuccessMessage").hide();
                    $("#create-review .CreateReviewFailureMessage").hide();
                }
            }
        });
        $("#create-review").dialog("open"); // <------- open dialog this way.
    });
});
Теги:
asp.net-mvc-5
telerik-grid

1 ответ

1
Лучший ответ

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

Попробуйте: $('.ui-dialog-buttonset button:contains("OK")').hide();

Ещё вопросы

Сообщество Overcoder
Наверх
Меню