部分视图异步加载,未加载,无错误

时间:2013-09-12 15:37:42

标签: c# ajax asp.net-mvc kendo-ui partial-views

Vs'12 C#Asp.net MVC4,互联网应用模板+ Kendo UI。

描述

我来自KendoUI_DropDownList。这会触发一个事件,将DDL中所选项目的值放入我的Ajax Script。此脚本将值“1”传递给我的Contoller。该控制器启动我的Partial View,并且应该将其返回到我的<div id="LoadingPartialDataDiv"></div>

代码

  • 我希望将_PartialView放入

    <div id="LoadingPartialDataDiv"></div>
    
  • Kendo DDL

    @(Html.Kendo().DropDownList()
          .Name("OptionsDrop")
          .BindTo(new string[] { "Leasehold", "Owner", "Stranger" })
          .Events(e => e.Change("change"))
        )     
    
  • 脚本

    function change() {
        var val = $("#OptionsDrop").val();
    
        $.ajax({
               url: '/ImageView/Leasehold/',
               dataType: 'Post',
               data: { id : val },
               success: function (data) {
                      $('#LoadingPartialDataDiv').html(data);
               }
        });
    });
    
  • 控制器

    [HttpGet]
    public PartialViewResult LeaseholdA(string id)
    {
        int xx = Convert.ToInt16(id);
        var trct = db.Tracts.Find(xx);
        return PartialView("_Leasehold", trct);
    }
    
  • 查看

    @model OG.ModelData.dbTract  
    
    Something Really Simple to test
    
    ViewBag.Title = @Model.TractNumber;
    

问题

我绝对没有收到任何错误,我甚至可以调试(单步执行代码)并看到它运行一切,没有错误。我的值从Script传递到Controller,从控制器传递到_partialView。然而,我的_partialView没有出现....对此有何想法?

1 个答案:

答案 0 :(得分:4)

可能不是这个,但你注意到了:

var val = $("#OptionsDrop").val();
data: { id : var }` **`<-- should be "val"

另一件事我对 KendoUI控件不太了解,但也许您需要在页面中添加一些脚本。

编辑:尝试在局部视图中添加一些代码以检查Render是否正在发生。