Я вижу результат при вводе чего-либо в текстовое поле.Результат действительно идет в DIV, я хочу.Тем не менее, я смотрю на исходный код страницы и не вижу заменяющего элемента.
Например, я ввожу 'aaaaaaaaaaaaaaaa', нажимаю кнопку отправки, я вижу результат, как вы ввели aaaaaaaaaaaaaaaa;Но если щелкнуть правой кнопкой мыши, чтобы открыть исходный код, я не вижу его html-элемента
. Поскольку я использую Accordion в другом месте, Accordion не работает должным образом, потому что JavaScript не видит html-элементы, возвращаемые из Action.
Что мне сделать, чтобы это исправить?
Представление
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
<h2>Home Page</h2>
<%using (Ajax.BeginForm("Index", new AjaxOptions { UpdateTargetId = "HomeResult", InsertionMode = InsertionMode.Replace }))
{ %>
<%= Html.TextBox("query", null, new {size=40}) %>
<input type="submit" value="Home Submit" />
<%} %>
<div id="HomeResult">
<h2>Home result goes here.</h2>
<%Html.RenderPartial("PartialResult", ViewData.Model); %>
</div>
Действие контроллера
public ActionResult Index()
{
if (Request.IsAjaxRequest())
{
ViewData["Message"] = "Partial View Logon";
return PartialView("PartialResult", Request.Params.Get("query"));
}
return View();
}
Представление частичного результата
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
<div>
<% if (Model != null) %>
<% { %>
<h1>
You entered <%= Model.ToString() %>
</h1>
<% } %>
</div>