使用AJAX调用MVC-action渲染局部视图

时间:2014-10-29 11:17:39

标签: ajax asp.net-mvc

我的代码中有这个AJAX:

 $(".dogname").click(function () {
        var id = $(this).attr("data-id");
        alert(id);
            $.ajax({
                url: '/Home/GetSingleDog',
                dataType: 'html',
                data: {
                    dogid: id,

                },
                success: function (data) {
                    $('#hidden').html(data);

                }
            });

    });

使用正确的值触发警报,但AJAX调用未启动(该方法未被调用)。

以下是我试图点击的方法:

 public ActionResult GetSingleDog(int dogid)
        {
            var model = _ef.SingleDog(dogid);

            if (Request.IsAjaxRequest())
            {
                return PartialView("_dogpartial", model);
            }
            else
            {
                return null;
            }
        }

有人能看到我错过的东西吗?谢谢!

1 个答案:

答案 0 :(得分:1)

你知道这个ajax调用会抛出什么错误吗? 使用fiddler或其他工具来验证来自服务器的响应。

尝试修改您的ajax调用,如下所示

$.ajax({
                url: '/Home/GetSingleDog',
                dataType: 'string',
                data: {
                    dogid: id,

                },
                success: function (data) {
                    $('#hidden').html(data);

                }
                error: function(x,h,r)
                {
                    //Verify error 
                }
            });

也可以尝试

$.get("Home/GetSingleDog",{dogid : id},function(data){
$('#hidden').html(data);
});

确保URL正确且参数dogid(区分大小写)与控制器的操作方法相同