Визуализация представления в ASP.Net MVC - PullRequest
1 голос
/ 20 апреля 2011

В моем коде я использую частичное представление (назовите его PV1)

<div id="div_1">
    <% Html.Partial("PV1", Model); %>
</div>

и в этом частичном представлении я использую «Ajax.BeginForm», чтобы перенаправить его на определенное действие, поэтому он делает это ...

using (Ajax.BeginForm("action1", "Forms", null, new AjaxOptions { UpdateTargetId = "div_1" }, new { id = "form1" }))
                {
                    Response.write("I am here.");
                }

public ActionResult action1(XYZ Model)
{
        //
       return PartialView("PV1", Model);
}

на последнем этапе действий я снова называю тот же частичный 'PV1', следовательно, он тоже делает это ...

но при рендеринге представления оно не печатается или не выполняет шаги, записанные в частичном представлении, оно переопределяет их и ничего не показывает ...

Ответы [ 2 ]

2 голосов
/ 20 апреля 2011

Html.Partial фактически возвращает результат рендеринга представления, который вы хотите сделать <%= Html.Partial() %> или <% Html.RenderPartial(); %>

Html.Partial() возвращает Html и, следовательно, должен выводиться на страницу через <%= %>, а Html.RenderPartial() использует Response.Write для вывода на страницу и может использоваться с <% %>.

1 голос
/ 20 апреля 2011

Это не то, для чего вы бы использовали Ajax.BeginForm.Этот помощник используется для создания фактических тегов <form>, которые впоследствии будут отправлены на сервер с использованием ненавязчивого ajax MVC (поэтому вам все еще нужно какое-то действие триггера - кнопка, javascript - все, что передает форму).

Мне не очень понятно, чего вы пытаетесь достичь.Если вы хотите загрузить частичное представление с помощью ajax, я бы предложил использовать что-то вроде jjuery-метода загрузки ajax.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...