1

所以我在我的控制器中有这个测试方法,在一个 C# MVC 项目中(使用剃刀标记):

public virtual string[] TestArray(int id)
{
    string[] test = new string[] { "test1", "test2", "test3", "test4", "test5" };

    return test;
}

有没有办法让这个数组变成javascript?

这是我尝试过的:

function testArray(id) {
    $.get('Project/TestArray/' + id, function (data) {
        alert(data[0]);
    });
}

不言而喻,这没有用——我不擅长 javascript。

我怎样才能正确地做我所描述的?

注意:“项目”是我的控制器的 URL 模式。

4

2 回答 2

3

从控制器返回 Json

public virtual ActionResult TestArray(int id)
{
    string[] test = new string[] { "test1", "test2", "test3", "test4", "test5" };

    return Json(test, JsonRequestBehavior.AllowGet);
}

使用getJSON在你的 js 中获取一个 Json 对象

function testArray(id) {
    $.getJSON('Project/TestArray/' + id, function (data) {
        alert(data[0]);
    });
}
于 2013-04-26T15:35:30.637 回答
0

改用返回 JSON 元素的操作:

public JsonResult TestArray(int? id)
{
    string[] test = new string[] { "test1", "test2", "test3", "test4", "test5" };
    return Json(test, JsonRequestBehavior.AllowGet);
}
于 2013-04-26T15:34:28.280 回答