Javascript 使用mvc填充局部视图

Javascript 使用mvc填充局部视图,javascript,razor,partial-views,viewbag,Javascript,Razor,Partial Views,Viewbag,再次问候各位。首先,我已经阅读了20多篇关于这个话题的帖子,至少15个无利害关系的交换链接,并就这个问题问了5个我自己的问题 首先,我只想知道mvc在创建视图时是否可以用动态数据填充局部视图?如果不是,那么我的猜测是正确的。这只能在webforms中下载,我可以放弃这个mvc应用程序,只使用webforms 如果可以的话,请告诉我怎么做。这是我所拥有的一切 使用名为 _存储在mvc代码隐藏文件夹的共享文件夹中的PartVue 此零件视图是使用向导生成的 <table cellpadding

再次问候各位。首先,我已经阅读了20多篇关于这个话题的帖子,至少15个无利害关系的交换链接,并就这个问题问了5个我自己的问题

首先,我只想知道mvc在创建视图时是否可以用动态数据填充局部视图?如果不是,那么我的猜测是正确的。这只能在webforms中下载,我可以放弃这个mvc应用程序,只使用webforms

如果可以的话,请告诉我怎么做。这是我所拥有的一切

使用名为

_存储在mvc代码隐藏文件夹的共享文件夹中的PartVue 此零件视图是使用向导生成的

<table cellpadding="1" border="1">
    <tr>
        <th>
            Field1
        </th>
        <th>
            Field2
        </th>
        <th>
            Field3
        </th>

   </tr>

    @foreach (System.Models.DATA_LIST item in @ViewBag.List)
    {
        <tr>
            <td>
                @item.F1
            </td>
            <td>
                @item.F2
            </td>
            <td>
                @item.F3
            </td>
        </tr>
    }

</table>
在控制器中,我有一个生成列表的函数和一个使用名为return PartialView的函数:

    [HttpGet]
    public ActionResult ShowList(int? VID)
    {


        ViewBag.DataList = Get_List(VID);
        return         PartialView("~/Views/Shared/_PartVue.cshtml",ViewBag.DataList);


    }
还有填充查看行李数据的Get List函数

    private List<LIST_DATA> GET_List(int? VID)
    {

        return db.LIST_DATA.Where(i => i.ID == VID).ToList();
    }
私有列表获取列表(int?VID)
{
返回db.LIST_DATA.Where(i=>i.ID==VID.ToList();
}
我在create上得到的是字段,但没有数据。 当我进入代码后,我看到选择了正确的数据,但它没有进入局部视图表单

这是我得到的

在谷歌浏览器中,我发现以下错误: 加载资源失败:服务器响应状态为403(禁止)

此局部视图位于共享文件夹中。。。那么mvc是否告诉我它不能用动态数据填充局部视图,我需要使用webforms而不是尝试使用mvc


再次非常感谢。希望这个问题能更好地解释我想做什么,也许我能得到更好的指导,让我知道这是不可能的,在这个平台上也做不到。感谢

首先,您可以指定要在局部视图中使用的模型,如下所示:

@model List <YourSolutionName.YourFolderNameWhereModelIs.YourModelName>
@型号列表
然后您可以在foreach中使用它,如下所示:

@if(Model.Count > 0)
{
 foreach(var item in Model)
 {
        <tr>
            <td>
                @item.F1
            </td>
            <td>
                @item.F2
            </td>
            <td>
                @item.F3
            </td>
        </tr>
   }
}
@if(Model.Count>0)
{
foreach(模型中的var项目)
{
@项目1.F1
@项目2.F2
@项目3.F3
}
}

您需要删除此项并编辑您的。在你提出任何进一步的问题之前,请仔细阅读,以了解如何在这个网站上提问(你的网站很可能会被禁止)。嗨@StephenMuecke,你是什么意思?我需要删除这些问题吗?你为什么要禁止我?我不能禁止你,但是系统会因为你的问题而禁止你。你不能老是重复问题。按照我的要求,用相关的细节编辑上一个,或者删除上一个。如果可以的话-它的
$.get('@Url.Action(“ShowList”),{VID:$(this.val()},函数(数据){
假设
ShowList()
方法与生成主视图的GET方法位于同一控制器中。其
var model=GET\u List(VID);返回PartialView(“\u PartVue”,model);
an在部分视图
@model List
foreach(模型中的var项){…}
@StephenMuecke我从来没有说过我对mvc理解得那么好。我说我尝试了所有这些东西…你的代码中有一个叫做模型的东西…我没有我有一个视图包,因为我不了解整个模型的东西。我有点理解视图包,因为它有我的下拉列表,可以使用这个概念。如果你能d指给我看一个网站,它有这个局部视图功能,因为我需要详细信息,或者如果你认为它可以做到,你可以添加一个答案,并列出代码,它们应该是这样的吗?评论很难阅读,只是给我增加了困惑。嗨,谢谢先生。是的,这就是我最后做的,因为我不知道你可以这样做HTML代码中的注释。非常感谢您的帮助,先生!非常欢迎!MVC有一个陡峭的学习曲线。不要忘记将注释标记为答案,它将帮助所有其他人寻找相同的东西。
@model List <YourSolutionName.YourFolderNameWhereModelIs.YourModelName>
@if(Model.Count > 0)
{
 foreach(var item in Model)
 {
        <tr>
            <td>
                @item.F1
            </td>
            <td>
                @item.F2
            </td>
            <td>
                @item.F3
            </td>
        </tr>
   }
}