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>
}

1 つのモデル アイテムを編集する方法が必要です。コントローラーには、次のようなものがあります。

    [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 に答える