【问题标题】:Implementing UpdatePanel functionality with PartialViews - need help getting started使用 PartialViews 实现 UpdatePanel 功能 - 需要帮助入门
【发布时间】:2012-07-12 13:59:50
【问题描述】:

我是 MVC 的新手,需要帮助了解类似于 UpdatePanel 功能的部分更新实现。

我在页面的 LHS 上有某些过滤器,在 RHS 上有一个表(DataTable)。当用户选择过滤器时,我希望表格数据根据过滤器进行更改。我试图只加载包含表格的 PartialView 而不是加载整个页面。但是,我一开始就遇到了困难。

问题-

使用 Html.BeginForm 可以实现这样的事情吗? Like shown here. 我真的找不到关于 Html.BeginForm 的详细文档,MSDN 网站解释了技术细节,但我真的不确定是否有必要始终使用它,以及在哪里绝对需要它。

我试过的 -

我尝试过使用jQuery.load() shown here. 但是,当我尝试像这样加载我的局部视图时,我遇到了 400 Bad Request 错误。

我在这里所做的只是-

在视图中-

我试过了-

$('#contentDiv').load('<%= @Url.Action("Index", "Grid") %>');  

还有这个-

$.post('<%= @Url.Action("Index", "Grid")%>', function (data) {
        $('#contentDiv').html(data);   }

我也尝试过使用#get,但也没有用。

在控制器中-

    public ActionResult Index()
    {
        List<Models.GridData> tableData= new List<GridData>();
        try
        {                
            tableData= hvUtil.FillGrid();
            return PartialView(notes);               
        }
        

任何人都可以建议如何让事情正常进行吗?

【问题讨论】:

    标签: asp.net-mvc razor updatepanel


    【解决方案1】:

    您似乎在使用 Razor 和 ASCX 语法的奇怪组合。你看过生成的 javascript 吗?

    这可能会让你更接近你想要的:

    $('#contentDiv').load('@Url.Action("Index", "Grid")');  
    

    【讨论】:

    • 天哪!那是问题所在?我一直在网上搜索示例,其中大多数都有这种语法。在这个框架中工作得不够多,我没有意识到这一点!太感谢了。我很快就会接受这个作为答案!
    • @neuDev33:是的,当您看到&lt;%= %&gt;&lt;%: %&gt;&lt;% %&gt; 语法时,它适用于.ascx 文件。 Razor 将所有这些鳄鱼风格的标签替换为 @...@(...)@{...},具体取决于上下文。
    猜你喜欢
    • 2016-07-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多