0

そして、私はこの編集ボタンを持っています:

 @Ajax.ActionLink(" ", "Edit", new { oid = item.memoOID }, new { id = "edit_" + item.memoOID })

コントローラーアクション「編集」からエンティティを入力し、以下に定義されているダイアログボックスに送信したいと思います(新しい Domain.Model.memo() を置き換えたい:

<div id="memoAddDialog" title="New Memo" style="display: none">
    @Html.Partial("~/Views/Pat/newMemoDialog.cshtml", new Domain.Model.memo())
</div>

このポップアップで:

function OpenMemoDialog() {
        $("#memoAddDialog").dialog("open");
    }

    $("#memoAddDialog").dialog({
        autoOpen: false,
        height: 575,
        width: 900,
        dialogClass: "positioning24"
    });

その部分ビューに値を渡す方法がわからず、いくつかのポインターが必要です。誰でも助けることができますか?

4

2 に答える 2

1

これを試してみてください

  //In View 
    @Ajax.ActionLink("AjaxLink", "Edit", new { oid = item.memoOID ,id = "edit_"+item.memoOID }, new AjaxOptions { UpdateTargetId = "memoAddDialog", HttpMethod = "Post",OnSuccess="Success" })

    <div id="memoAddDialog" title="New Memo" style="display: none">
    </div>

<script type="text/javascript">
function Success()
{
  //open your dialogbox here
   $("#memoAddDialog").dialog("open");
}

</script>

コントローラ内

[httpPost]
public ActionResult Edit(string oid , string id)
{
     //perform your functionality 

    return PartialView("~/Views/Patient/newMemoPatientDialog.cshtml", new Mavi.Domain.Model.memo());
}

注:Ajax.ActionLinkでは、結果がページに表示される場所に UpdateTargetIdを指定する必要があります

于 2012-09-28T08:50:51.970 に答える
0

私はこのようなことをします:

<a href="OpenMemoDialog('@(Url.Action("Edit", new oid = item.memoOID)')" />

OpenMemoDialogを次のように使用します。

function OpenMemoDialog(url) {
        $("#memoAddDialog").dialog("open");
        $("#memoAddDialog").load(url);
    }

memoAddDialogは単なる空のdivであり、編集アクションは部分ビューを返す必要があります。

于 2012-09-28T08:20:29.713 に答える