0

我尝试制作 webgrid,当我单击编辑按钮时,该按钮会将值从 webgrid 中的第一个 td 传递到我的控制器,但我无法传递值..有人可以告诉我,哪一行是错误的?

这是我的看法

 @grid.GetHtml(
        tableStyle: "grid",
        headerStyle: "head",
        alternatingRowStyle: "alt",
        firstText: "<< First",
        previousText: "< Prev",
        nextText: "Next >",
        lastText: "Last >>",
        mode: WebGridPagerModes.All,
        columns: grid.Columns(
            grid.Column(header: "Content ID", format: (item) => item.ContentID),
            grid.Column(header: "Active", format: (item) => Html.Raw("<input type=\"checkbox\" " + ((item.Active == true) ? "checked='cheked'" : "") + "disabled = 'disabled'/>")),
            grid.Column(header: "Image", format: @<img src="@Href("~/images/MobileContent/" + @item.ImageURL)" width="120px" height="50px;" />),
            grid.Column("Description"),
            grid.Column("Action", format: @<text>
                                <button class="edit-content">Edit</button>
                                <button class="remove-content">Remove</button>
                            </text>)

        )
        )
                        }
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>

@section scripts{
    <script>
        $(".edit-content").click(function () {
            var id = $(this).find('td:first').text();
            location.href = '/MobileContent/Edit/' + id;
        });

    $('thead tr th:nth-child(1), tbody tr td:nth-child(1)').hide();
    </script>
}

这是我的控制器

public ActionResult Edit(int id)
        {
            ViewModel.MobileContent.MobileContentViewModel vm = new ViewModel.MobileContent.MobileContentViewModel();
            vm.EditContent = EditContent(id);
            return View(vm);
        }
4

2 回答 2

0

试试

var id = $(this).parent('tr').find('td:first').text();
于 2013-09-02T07:51:50.430 回答
0

尝试这个,

 <input type="button" value="Assign" onclick="myfunction(@item.ID);" />
OR
@Html.ActionLink("EditUser", "DYmanicControllerPage", "Test", new { Id = item.ID }, new { @class = "hide" })


 function myfunction(obj) {

        var id = obj;
        location.href = '@Url.Action("DYmanicControllerPage", "Test")?Id=' + id;

    }

控制器

 public ActionResult DYmanicControllerPage(string Id)
        {
            var model = new RegisterModel();
            int _ID = 0;
            int.TryParse(Id, out _ID);
            if (_ID > 0)
            {
                RegisterModel register = GetRegisterUserById(_ID);
                model.ID = _ID;
                model.Name = register.Name;
                model.Address = register.Address;
                model.PhoneNo = register.PhoneNo;

            }
            return View(model);
        }
于 2013-09-02T10:32:36.870 回答