如何将json数组从控制器传递到view.cshtml中的Javascript(ajax)

时间:2016-01-06 20:07:40

标签: javascript c# arrays json ajax

我正在尝试从方法(比如从控制器)传递一个Document对象数组到调用该方法的JavaScript(在视图中)。由于某种原因,该方法不会传递数组(仅当数组为空时才有效)。我还尝试将所有数组成员放入一个新数组,甚至列表并将其传递给视图,但它不起作用(Inspect Element - > Console = 500(内部服务器错误)) (Screenshot here)。

以下是JavaScript代码的一部分:

$.ajax({
            method:"get",
            data: data,
            url: url + "?binderId=" + companyId +"&description="+ data

        }).success(function (response) {
            console.log("Success");
            console.log(response);

        }).error(function (response) {
            console.log("Error");
            console.log(response);
        });

这是C#代码,将数组从上面发送到JavaScript:

 public ActionResult SearchDocument(int binderId, string description)
    {
        //documents is a array
        var documents = Search.SearchDocument(binderId, description);
        return Json(documents, JsonRequestBehavior.AllowGet);
    }

我觉得JavaScript有些不对劲,但我不知道是什么。 谢谢!

1 个答案:

答案 0 :(得分:0)

尝试返回JsonResult而不是ActionResult

public JsonResult SearchDocument(int binderId,string description)