0

私が使用しているビューがあります:-

@using (Ajax.BeginForm("Edit", "Files", new AjaxOptions
{
HttpMethod = "POST",
InsertionMode = InsertionMode.Replace,
UpdateTargetId = "divFile-" + Model.FileId,
OnSuccess = "editPrivilegeLevelForFileSuccess",
OnFailure = "editPrivilegeLevelForFileFailure"
}))
@Html.HiddenFor(model => model.FileId)

ここでの問題は UpdateTargetId です:-

現在、私のモデルには FileId 値がありません。jqueryメソッドでHiddenフィールドの値を設定していますが、うまくいきます。

$("#FileId").val(fileId);

しかし、どうすれば UpdateTargetId に同じ値を設定できますか?

ありがとうございました

4

2 に答える 2

1

このプロパティの値がクライアント側でのみわかっている場合は、OnSuccess コールバック内でそれを行うことができます。したがってUpdateTargetId、AjaxOptions からプロパティを削除し、editPrivilegeLevelForFileSuccessハンドラー内で対応するセクションを手動で更新できます。

function editPrivilegeLevelForFileSuccess(result) {
    var fileId = $('#FileId').val();
    $('#divFile-' + fileId).html(result);
}
于 2013-01-13T12:00:25.533 に答える