从C#控制器将数组传递到JAVAScript

时间:2019-04-04 10:46:25

标签: javascript c# asp.net-mvc

我在c#中的对象列表上构建并将其返回为return Json(thisVar) 来自我的控制器,public async Task<JsonResult> 然后在我的CSHTML中有这个:

$.get(url,
      dataObject, 
      function (response) {
         alert(response);
         var allRes = JSON.parse(response);

我的第一个警报节目[object Object]

但出现错误:

  

未捕获到的SyntaxError:JSON中位置1处的意外令牌o

4 个答案:

答案 0 :(得分:0)

您的<dependency> <groupId>com.google.api.grpc</groupId> <artifactId>proto-google-cloud-dialogflow-v2beta1</artifactId> <version>0.51.0</version> 已经是一个对象-无需解析它。

response

答案 1 :(得分:0)

如果您的第一个警报显示了JS对象,则您的对象已经被JSON解析,因此您无需JSON.parse

服务器可能返回包装在对象中的数组,例如response.thisVar,如果您进行console.log,则会找到它

答案 2 :(得分:0)

正确的答案是已经是jsoon了,所以我需要遍历并仅使用json对象。我必须在[]中使用标签作为字段名称 感谢所有的答案。 console.log特别有用

答案 3 :(得分:-1)

JSON.parse()用于将文本转换为JavaScript对象,反之亦然。

您可以重新检查代码吗?响应已经是JSON。 JSON.stringify将帮助您将其打印为文本。

例如:

`var obj = JSON.parse('{ "name":"John", "age":30, "city":"New York"}');`