首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >要在WebGrid中将项id广告为呈现的<Tr>的id,必须采用什么方法

要在WebGrid中将项id广告为呈现的<Tr>的id,必须采用什么方法
EN

Stack Overflow用户
提问于 2018-12-14 09:28:17
回答 1查看 24关注 0票数 0

我正在使用一个asp.net MVC web应用程序,在我的视图中,我有一个webgrid,如下所示:

代码语言:javascript
代码运行次数:0
运行
复制
@model  T.ViewModels.GridList<T.Models.Resources>
var gridcolumns = new List<WebGridColumn>();
gridcolumns.Add(new WebGridColumn()
      {

        CanSort = false,
        Format =
          (item) =>
             {
               var banner = item.Value as T.Models.Resources;
               return Ajax.ActionLink("Delete", "Delete", banner.Technology.TechnologyType.Name, new { id = banner.TechnologyID },
new AjaxOptions
{
    Confirm = "Are You sure You want to delete (" + banner.Technology.Tag.ToString() + ")",
    HttpMethod = "Post",

    OnSuccess = "deletionconfirmation",
    OnFailure = "deletionerror"
});
                    }

        });
            var grid = new WebGrid(
                        canPage: true,
                        rowsPerPage: Model.PageSize,
                        canSort: true,
                        ajaxUpdateContainerId: "grid");

            grid.Bind(Model.Content, rowCount: Model.TotalRecords, autoSortAndPage: false);
            grid.Pager(WebGridPagerModes.All);

            @grid.GetHtml(htmlAttributes: new { id = "grid" },   // id for ajaxUpdateContainerId parameter
            fillEmptyRows: false,
            tableStyle: "table table-bordered table-hover",
            mode: WebGridPagerModes.All,
            columns: gridcolumns

            );

现在,web网格将生成一个包含行的HTML表。正如我上面的示例代码所示,我有一个删除行的Ajax.ActionLink,并且我正在传递项目i。然后在OnSuccess = "deletionconfirmation"函数中,我将删除相关的行,如下所示:

代码语言:javascript
代码运行次数:0
运行
复制
function deletionconfirmation(data)
{
    if (data.IsSuccess == "reload") {
        location.reload();
    }
    if (data.IsSuccess == "True") {
        $('#' + data.id).remove();

        $.fn.jAlert({
            'title': 'Deletion Confirmation',
            'message': data.description   +  ' deleted successfully',
            'theme': 'success',
            'clickAnywhere': false
        });
    }

但我的问题是,如何将WebGrid中的项is添加为生成的行的is?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-14 09:45:14

deletionconfirmation方法中的this表达式将为您提供锚标记HTML元素,用户单击该元素即可启动ajax调用。您可以使用jQuery closest方法来获取它的外部TR。

代码语言:javascript
代码运行次数:0
运行
复制
function deletionconfirmation(data) {

    var $tr = $(this).closest("tr");

    //Do your if conditions to check the data property to determine what to do next.

    $tr.fadeOut(400);

}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53772367

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档