使用Jquery传递列表

使用Jquery传递列表,jquery,asp.net-mvc,Jquery,Asp.net Mvc,我有以下代码: $("#allphotos").click(function () { $("<div></div>") .addClass("dialog") .appendTo("body") .dialog({ close: function() { $(this).

我有以下代码:

$("#allphotos").click(function () {

                $("<div></div>")
                    .addClass("dialog")
                    .appendTo("body")
                    .dialog({
                        close: function() { $(this).remove(); },
                        modal: true,
                        height: 1000,
                        width: 1000
                    })
                    .load("/Home/AllPhotos", data);

            });
这就是问题所在。有什么想法可以试试吗

视图:

@model aPhoto\u web.Models.AdminPages.AdminViewModel
测试对话框是否为空…是否为空
@foreach(模型中的var项目。照片)
{
}

使用@Url.Action并从.load()中删除数据,因为您不想以以下方式向控制器发送任何内容:

$("#allphotos").click(function () {

            $("<div></div>")
                .addClass("dialog")
                .appendTo("body")
                .dialog({
                    close: function() { $(this).remove(); },
                    modal: true,
                    height: 1000,
                    width: 1000
                })
                .load(@Url.Action("AllPhotos", "Home");
        });
$(“#所有照片”)。单击(功能(){
$("")
.addClass(“对话框”)
.附件(“正文”)
.对话({
关闭:函数(){$(this).remove();},
莫代尔:是的,
身高:1000,
宽度:1000
})
.load(@Url.Action(“所有照片”、“主页”);
});
并更正所有照片的返回类型,因为您的局部视图需要AdminViewModel对象。

public ActionResult AllPhotos()
        {
            var listofPhotos =
                RavenSession.Query<ContentPage>()
                    .Where(o => o.Template.ContentPageType == "aPhoto_web.Models.Photography, aPhoto_web")
                    .AsProjection<Photography>()                  
                    .ToList();
            var avm = new AdminViewModel();
            avm.Photographys = listofPhotos;

            return PartialView("_allPhoto", avm); <---------


        }
public ActionResult AllPhotos()
{
var listofPhotos=
RavenSession.Query()
.Where(o=>o.Template.ContentPageType==“aPhoto_web.Models.Photography,aPhoto_web”)
.AsProjection()
.ToList();
var avm=新的AdminViewModel();
avm.Photographys=照片列表;

返回PartialView(“_allPhoto”,avm);如果控制器中不需要任何参数,请在JavaScript代码中尝试此方法

.load("/Home/AllPhotos");
在你看来试试这个

return PartialView("_allPhoto", avm);

您的视图需要
AdminViewModel

您现在得到什么结果?什么不起作用?是否调用此方法?结果是一个空对话框。是的,该方法被调用。您不需要控制器中的任何参数,请尝试
.load(“/Home/AllPhotos”)
无参数。我开始认为我试图传递的视图有问题。即使我在其中输入了一些代码,它也是空的。。你传递的“数据”是什么。load()。@user2915962yup=)这就是问题所在,我不知道如何处理方法(视图)的结果然后把它传给dialog@user2915962...thereAllPhotos操作中一定有问题,请检查…在visual studio中,如果partialview中出现错误,则不表示您必须仔细检查问题。。。
public ActionResult AllPhotos()
        {
            var listofPhotos =
                RavenSession.Query<ContentPage>()
                    .Where(o => o.Template.ContentPageType == "aPhoto_web.Models.Photography, aPhoto_web")
                    .AsProjection<Photography>()                  
                    .ToList();
            var avm = new AdminViewModel();
            avm.Photographys = listofPhotos;

            return PartialView("_allPhoto", avm); <---------


        }
.load("/Home/AllPhotos");
return PartialView("_allPhoto", avm);