我有一个带JSON.stringify的tableDnD拖放:
jQuery(document).ready(function() {
jQuery("#Table").tableDnD({
onDragClass: "danger",
onDrop: function(table, row) {
jQuery.ajax({
url: "ajax.php",
type: "post",
data: {
'rows' : JSON.stringify(table.tBodies[0].rows)
},
dataType: 'html',
success: function(reponse) {
if(reponse) {
//alert('Success');
} else {
alert('Erreur');
}
}
});
}
});
});
我收到以下错误消息:
未捕获的类型错误:将圆形结构转换为JSON
我只有Chrome问题。
您需要使用DOM元素的.innerHtml属性,而不是转换整个DOM元素。因此,您应该考虑以下内容:
JSON.stringify(table.tBodies[0].innerHTML)
不应将DOM元素直接转换为JSON。
虽然-就像你已经经历过的-它失败了,例如在Chrome,结果也可能是意想不到的。
这是因为数据是循环的:
Node具有包含其所有子节点的属性子节点
和指向父节点的属性父节点
。
JSON格式不支持引用,所以它需要跟随属性直到结束,但是因为一个子指向它的父级,父级有它的子级列表,这是一个无休止的循环,这就是你得到错误的原因:
未捕获类型错误:将循环结构转换为JSON
即使通过浏览器解决了这一问题,您也可能会遇到其他问题。因为不仅存在childNodes
,而且还存在childElements
。这同样适用于parentNode
/parentElement
,然后还有nextSibling
,previsibling
,firstChild
,lastChild
。。。这可能也会发生,因此最终会出现一个可怕的大JSON文件,其中包含大量重复数据。
我在这里收到以下错误 TypeError:将循环结构转换为JSON-- 问题似乎是圆形结构不能使用JSON stringify转换。然而,我似乎找不到我使用圆形结构的地方。我是不是漏了什么? 示例循环结构:var a={};a、 b=a; 取东西 新信息 编辑-完全错误
我正在使用node.js的请求包 代码: 我在这里收到这个错误: TypeError:将圆形结构转换为JSON 有人能告诉我是什么问题吗?
我对Vue相当陌生,我一直在尝试如何使用Axios调用Java API。 vue.config.js dashboard.vue 然而,无论我如何尝试,它总是给出错误: 在这个错误中,我编辑了dashboard.vue:19的路径,但它来自那里。这行给出了错误:。 API运行在localhost端口8080上,Vue应用程序运行在localhost端口3000上。我不确定是我做错了跨原点还是完全不
问题内容: 我有一些代码可以从集合中提取所有文档并将其放到网页上。简化版本如下所示: 我有一个driveInfo集合,其中包含很长的文档列表。每个文档包含嵌套的对象。我想做的是,每当有人在其浏览器中访问/ drive时,将整个集合打印为json对象,以便以后可以用jquery抓取所有内容(api的开头) 但是,我收到一条错误消息:“ TypeError:将圆形结构转换为JSON”。页面上的错误指向
这个代码不起作用 VM531:3未捕获类型错误:console.log(...)不是一个函数在: 3:3 这两个很好用