0

Ola.. 我在编辑表格中的几个模型时遇到问题。我在页面上有一个模型列表(带有foreach),例如

<table id="grid-table" >

@foreach (var image in ViewBag.Images)
{
    <tr>

        <td >
            <a href="@Url.Action("ShowFullImage", new { id = @image.ID })" rel="lightbox[roadtrip]" title="@image.Description" >
                <img src="@Url.Action("ShowImageThumbneil", new { id = @image.ID })" alt="@image.AlternateText" />
            </a>
        </td>

        <td >
            @using (Html.BeginForm("SaveImageInfo", "Admin", FormMethod.Post))
            {
                @Html.TextAreaFor(m => m.Description) <br />
                @Html.TextBoxFor(m => m.AlternateText) <br />
                @Html.LabelFor(m => m.ID)

                <div id="item-post" >
                    <input title="Подтвердить" type="submit" value="Подтвердить" />
                </div>
            }
        </td>

    </tr>
}

我想有一种方法来编辑一个模型项目。在控制器中,我有这样的东西:

    [HttpPost]
    public ActionResult SaveImageInfo(ImageModel imageModel)
    {
        Image img = _core.GetImageByID(_client, imageModel.ID);
        img.AlternateText = imageModel.AlternateText;
        img.Description = imageModel.Description;

        _core.SaveImageInfo(_client, img);
        return View();
    }

但是,当然,它不起作用..有人可以帮助我吗?

4

2 回答 2

3

更改@Html.LabelFor(m => m.ID)@Html.HiddenFor(m => m.ID)。标签的内容不随 POST 发送,但隐藏字段的内容是..

于 2012-10-17T13:44:29.710 回答
0

我猜测了一下,因为我不知道您到底看到了什么问题,但如果它与尝试重定向有关,请在保存后尝试更改:

Html.BeginForm

Ajax.BeginForm
于 2012-10-17T13:43:35.570 回答