Как поместить частичное представление в div в JavaScript (с помощью jQuery)
У меня есть,MyPartialView.cshtml':
<div id="partialDiv">some content</div>
index.cshtml:
<div id="mainDiv"> </div>
и "index.js".
'I ndex.js' должен выглядеть примерно так:
$('mainDiv').html($('#partialDiv'))
поставить частичный вид в основной раздел.
(пишу @<text> <div> @Html.Partial("MyPartialView")</div></text>)
по моему.cshtml работает, но мне нужно динамически менять содержимое. Поэтому я подумал, что, может быть, в JavaScript есть эквивалент дляHtml.Partial
'
(Или есть другой способ получить частичное представление без вызова AJAX)
2 ответа
@Html.Partial("MyPartialView")
используется только для визуализации одного файла частичного просмотра (также с @Html.RenderPartial()
). Вы можете использовать AJAX для вызова действия контроллера, которое возвращает частичное представление:
AJAX Запрос
$.ajax({
type: 'GET',
url: '@Url.Action("ActionName", "ControllerName")',
// other settings
success: function (result) {
$('mainDiv').html(result);
}
});
Действие контроллера
[HttpGet]
public ActionResult ActionName()
{
// do something
return PartialView("MyPartialView");
}
Обратите внимание, что в JS нет эквивалента вызова частичного представления, потому что вам нужно сделать запрос к серверу, который не может быть просто обработан стандартными функциями JS.
cshtml
файлы сто на стороне сервера. Вы не можете загрузить его, используя только JavaScript. идеальный способ - использовать Ajax, вызывая Action, который возвращает ваше частичное представление