如何从jQuery中的列表中获取对象的值?在我从控制器获取ActionResults列表的那一刻,我想获取每个动作的值(html代码)。
当我尝试发送单个ActionResult时(没有列表)没有问题。
当我尝试发送List<ActionResult>
时,每次都会收到object Object
。
<script type="text/javascript">
$(document).on('click', 'button', function () {
$cartAction = $("#" + this.id);
var url = $cartAction.data("url");
$.get(url, function (actions) {
console.log(actions); <-- return Objects Array
console.log(???); <-- how to get value of each actions
console.log(actions[1]); <-- return a single object
console.log(actions[1].document) <-- value undefined
});
});
</script>
public ActionResult Index()
{
var actionList = new List<ActionResult>()
{
// ViewComponents, PartialViews
};
return Json(actionList);
}
我希望每个ActionResult返回html代码,但我得到
[对象对象],[对象对象]
有关操作列表。
编辑:关于我的问题的答案在这里stackoverflow.com/a/53639387/10338470
答案 0 :(得分:0)
在jQuery中,您可以迭代这样的值
<script type="text/javascript">
$(document).on('click', 'button', function () {
$cartAction = $("#" + this.id);
var url = $cartAction.data("url");
$.get(url, function (actions) {
console.log(actions); // <-- return Objects Array
$.each(function() { // <-- iterates through each object in actions array
console.log($(this)); // <-- logs the object to the console
});
console.log(actions[1]); // <-- return a single object
console.log(actions[1].document) // <-- value undefined
});
});
</script>
在大多数浏览器中,甚至console.log(actions);
都可以使用。但您始终可以JSON.stringify(actions);