C# 部分视图刷新后更新模态数据
我在主视图中有一个选择框。该视图包含一个局部视图当选择框上的值更改时,我希望重新加载局部视图(使用模型中的一些新数据),并使用新数据更新模态内容 我可以成功地重新加载部分视图,我的问题是,模式更新的最佳方法是什么 我看到的选择:C# 部分视图刷新后更新模态数据,c#,asp.net-mvc,model-view-controller,C#,Asp.net Mvc,Model View Controller,我在主视图中有一个选择框。该视图包含一个局部视图当选择框上的值更改时,我希望重新加载局部视图(使用模型中的一些新数据),并使用新数据更新模态内容 我可以成功地重新加载部分视图,我的问题是,模式更新的最佳方法是什么 我看到的选择: 在主视图中定义模态,但不知道如何访问传递到局部视图的模型中的数据 在局部视图中定义模态,但这是一个好的实践吗 将包含所有信息的模型传递给主视图,但是这样,当选择框上的值更改时,我需要刷新所有视图,并且我更喜欢只重新加载部分视图 我从您的问题中了解到的是,您有一个主视图
- 在主视图中定义模态,但不知道如何访问传递到局部视图的模型中的数据李>
- 在局部视图中定义模态,但这是一个好的实践吗
- 将包含所有信息的模型传递给主视图,但是这样,当选择框上的值更改时,我需要刷新所有视图,并且我更喜欢只重新加载部分视图
@model yourProjectNameSpace.SomeModel
@{
ViewBag.Title = "Index";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<h2>@ViewBag.Title</h2>
<select id='yourSelectList'>
<option value="1">Option One</option>
<option value="2">Option two</option>
</select>
<div id="PartialAreaToUpdate">
@Html.Partial("_YourPartialView", Model)
</div>
@section scripts
{
<script>
$('#yourSelectList').change(function () {
var selectedvalue = $(this).val();
if (!selectedvalue ) {
return;
}
$.ajax({
type: 'POST',
url: '@Url.Action("GetYourUpdatedPartial", "YourControllerName")',
data: { selectedvalue: selectedvalue},
success: function (response) {
$('#PartialAreaToUpdate').html('');
$('#PartialAreaToUpdate').html(response);
}
});
});
</script>
}
步骤。3:最后
您的局部视图[\u YourPartialView.cshtml]
@model yourModel
your logic of rendering data will go here
@model yourModel
your logic of rendering data will go here