-1

我想在视图加载时从控制器返回 JSON 值以查看我的控制器代码如下。

 [HttpGet]
    public ActionResult Add()
    {
        List<selectdata_Result> tbl = new List<selectdata_Result>();
        tbl = context.selectdata("", "", "", "").ToList();
        string s = JsonConvert.SerializeObject(tbl);
        return Json(s, JsonRequestBehavior.AllowGet);
    }

我的观点如下

          $.ajax({
              url: '@Url.Action("Add", "Home")',
              type: 'GET',
              success: function (response) {
                  alert(response);
              },
              error: function (respons) {
                  alert("error");
              }
          })

我想在警报(响应)中获取我的 json 值。给我一些解决方案。当我的页面加载时,我的 json 值被获取

4

3 回答 3

1

删除行字符串 s = JsonConvert.SerializeObject(tbl); 从控制器,它会工作。这是代码:

[HttpGet]
public ActionResult Add()
{
    List<selectdata_Result> tbl = new List<selectdata_Result>();
    tbl = context.selectdata("", "", "", "").ToList();
    return Json(tbl , JsonRequestBehavior.AllowGet);
}

Ajax 调用如下:

$.ajax({
          url: '@Url.Action("Add", "Home")',
          type: 'GET',
          dataType: 'json',
          success: function (response) {
              alert(response.data);
          },
          error: function (respons) {
              alert("error");
          }
      })
于 2017-08-12T10:55:16.597 回答
0

我会用

 [HttpGet]
    public JsonResult Add()
    {
        List<selectdata_Result> tbl = new List<selectdata_Result>();
        tbl = context.selectdata("", "", "", "").ToList();
        string s = JsonConvert.SerializeObject(tbl);
        var data = new { result = s }
        return Json(data);
    }

$.ajax({
          url: 'dom/controller/action',
          type: 'GET',
          success: function (response) {
              alert(response.data);
          },
          error: function (respons) {
              alert("error");
          }
      })
于 2017-08-13T18:01:45.460 回答
0

尝试

$.ajax({
              url: '@Url.Action("Add", "Home")',
              type: 'GET',
              dataType: 'JSON',
              success: function (response) {
                  alert(response);
              },
              error: function (respons) {
                  alert("error");
              }
          })
于 2017-08-12T08:25:49.430 回答