0

こんにちは、asp.net mvc アプリケーションがあります。クライアント名に対応するリンクがいくつかあります。ユーザーがこのリンクをクリックすると、クリックしたクライアントの情報と、選択したクライアントに関するテキスト (コメント) をユーザーが書き込むことができるテキストエリアを表示したいと思います。どうすれば達成できますか?

編集 私は次のようなものを作りました:

<%=Html.ActionLink(operatorWhoAnswered.Operator.FirstName, "ShowSingleConverstationWithAnswerForm", "MyMessages", new { id = operatorWhoAnswered.Operator.ROWGUID }, new AjaxOptions() { UpdateTargetId = "ss" }) %> 

私のコントローラーアクションは次のようになります。

public PartialViewResult ShowSingleConverstationWithAnswerForm(string id)
        {
            SingleConversationWithAnswerFormViewModel vm = new SingleConversationWithAnswerFormViewModel();
            PartialViewResult viewResult = new PartialViewResult();
            viewResult.ViewName = "SingleConverstationWithAnswerForm";
            viewResult.ViewData = new ViewDataDictionary(vm);
            return viewResult;
        }

ただし、ビューは id="ss" の div ではなく、新しいページで開きます

EDIT2 解決策が見つかりました! Html.ActionLink を使用した理由がわかりません。Ajax.ActionLink は正常に動作します。

4

1 に答える 1

1

次のようなことを試してください:

ユーザーがクリックしたときにレンダリングされる div を作成します。名前は何かのようなものですblabla。次に、リンクがある場所に次のようなものがあります

 <%=Ajax.ActionLink("Click here", "Action", "Controller", new { id = "some test data passed in"}, new AjaxOptions() { UpdateTargetId = "blabla" })%>

そして、そのアクションがあなたのビューを返すようにしましょう

于 2010-04-25T19:42:13.223 に答える