ASP .NET MVC 2. InsertionMode.Replace в AjaxOptions не работает правильно - PullRequest
0 голосов
/ 12 мая 2011

Я пытаюсь заменить содержимое <div> после отправки формы. Вот код (это частичное представление):

    <% using (Ajax.BeginForm("Authenticate", "User", new AjaxOptions { HttpMethod = "post", UpdateTargetId = "authPanel", InsertionMode = InsertionMode.Replace}))
{%>
    <label>Username</label><%= Html.ValidatedTextBoxFor(username => Model.UserAuthienficateDto.Username, false) %>
    <label>Password</label><%= Html.ValidatedTextBoxFor(password => Model.UserAuthienficateDto.Password, false) %>
    <input name="Input" type="submit" class="button" value="Authenticate" />
<%}%>
<div id="authPanel">
<ul>
    <% if (HttpContext.Current.User.Identity.IsAuthenticated)
    {%>
        <li class="nonregister">Logged in as <%=HttpContext.Current.User.Identity.Name%></li>
        <li class="register"><%= Html.ActionLink("Logout", "Logout", "User")%></li>
    <%
        }%>
    <% else
    {%>
        <li class="nonregister">Not a member &nbsp;?</li>
        <li id="userRegisterDialogOpener" class="register">Sign up now!</li>
    <%}%>
</ul>
</div>

Проблема в том, что после отправки формы я получаю полное частичное представление повторно. Также все результаты отображаются выше старых (хотя они имеют некоторое смещение). Почему InsertionMode.Replace не работает должным образом? Мант, спасибо заранее за помощь.

1 Ответ

0 голосов
/ 14 мая 2011

Я решил проблему, разделив форму и authPanel на различные частичные представления.

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