Загрузите частичный вид в div MVC
У меня есть кнопка на моем MVC-представлении по клику, она должна добавить частичный вид в "div", вызывая действие, которое принимает объект как параметр
Я пробовал что-то вроде этого:
$('#buttonId').onclick(function(){
$('#divid').load(@Html.Action("ActionName","ControllerName",new{parameterName = objectToPass}))
});
но он загружает actionresult/partial view на загрузку страницы не одним нажатием кнопки
Любая идея?
Ответы
Ответ 1
Попробуйте использовать
@Url.Action
вместо
@Html.Action
Или вы можете использовать ajax, например:
$('#buttonId').click( function() {
$.ajax({
type: 'POST',
url: '@Url.Content("~/ControllerName/ActionName")',
data: objectToPass,
success: function (data) {
$('#divid').innerHTML = data;
}
});
}
Ответ 2
<script type="text/javascript">
$(document).ready(function () {
$('#buttonId').click(function () {
$('#divid').load('@Url.Action("About", "Home")');
});
});
</script>
<a id="buttonId">Load partial view or Any URL</a>
<div id="divid" style="height:100px; width:400px";>
</div>
Ответ 3
Загрузка частичного представления в div MVC 4
Недавно я хочу загрузить Partal View в Div, после того, как много R & D и It работают для меня
$.ajax({
type: 'POST',
url: '@Url.Content("~/ControllerName/ActionName")',
data: {
title: title
},
success: function(result) {
$('#divid').innerHTML = result;
}
});
And In Partal View Action Controller Code
public PartialViewResult ShowCategoryForm(string title)
{
Model model = new Model();
model.Title = title;
return PartialView("~/Views/ControllerName/PartalView.cshtml", model);
}
Ответ 4
Загрузка требует строки, вы генерируете переменный путь
если вы посмотрите на исходный код, он генерирует что-то вроде:
$('#buttonId').click(function(){
$('#divid').load(yoururl/);
});
но вы хотите:
$('#buttonId').click(function(){
$('#divid').load("yoururl/");
});
код должен выглядеть так:
$('#buttonId').click(function(){
$('#divid').load('@Html.Action("ActionName","ControllerName",new{parameterName = objectToPass})');
});
но, как я вижу, загрузка должна работать до тех пор, пока вы не нажмете #buttonId