これは私の見解です:
@foreach(var item in Model) {
<tr id="TR@(item.Id)">
@{Html.RenderPartial("_PhoneRow", item);}
</tr>
}
_PhoneRow
:
@model PhoneModel
@using(Ajax.BeginForm("EditPhone", new { id = Model.Id }, new AjaxOptions {
UpdateTargetId = "TR" + Model.Id
})) {
<td>@Html.DisplayFor(modelItem => Model.PhoneNumber)</td>
<td>@Html.DisplayFor(modelItem => Model.PhoneKind)</td>
<td><input type="submit" value="Edit" /></td>
}
コントローラ:
public ActionResult EditPhone(long Id) {
//Get model by id
return PartialView("_EditPhoneRow", model);
}
public ActionResult SavePhone(PhoneModel model) {
//Save Phone, and Get Updatet model
return PartialView("_PhoneRow", model);
}
_EditPhoneRow
@model PhoneModel
@using(Ajax.BeginForm("SavePhone", new { id = Model.Id }, new AjaxOptions {
UpdateTargetId = "TR" + Model.Id
})) {
<td>@Html.EditorFor(modelItem => Model.PhoneNumber)</td>
<td>@Html.EditorFor(modelItem => Model.PhoneKind)</td>
<td><input type="submit" value="Save" /></td>
}
したがって、[完全に置換されたボタン]をクリックしても、ボタンをクリックしてEdit
もgetが表示されない場合、問題はどこにありますか?新しい部分ビューで行を更新すると、新しいAjaxフォームが機能しないのはなぜですか?この問題は非常に人気があると思います。編集-任意の行にAjaxで保存する必要があります。あなたの提案は何ですか?またはそれのためのソースまたは良いサンプル?_EditPhoneRow
Save