Javascript 将HTML div放入数据库中

Javascript 将HTML div放入数据库中,javascript,jquery,pouchdb,Javascript,Jquery,Pouchdb,我想将一个HTMLdiv(及其所有内容)放入一个JSON对象中,并将其保存到一个数据库中 我的div看起来像这样: <div class="easel"> <div class="square" style="background-color: white;"></div> <div class="square" style="background-color: white;"></div> <div cl

我想将一个HTMLdiv(及其所有内容)放入一个JSON对象中,并将其保存到一个数据库中

我的div看起来像这样:

<div class="easel">
    <div class="square" style="background-color: white;"></div>
    <div class="square" style="background-color: white;"></div>
    <div class="square" style="background-color: rgb(85, 222, 25);"></div><div class="square" style="background-color: white;"></div>
    <div class="square" style="background-color: white;"></div>
    <div class="square" style="background-color: white;"></div>
    <div class="square" style="background-color: white;"></div>
    <div class="square" style="background-color: rgb(164, 101, 52);"></div><div class="square" style="background-color: white;"></div>
    <div class="square" style="background-color: white;"></div>
    <div class="square" style="background-color: white;"></div>
    <div class="square" style="background-color: rgb(214, 15, 77);"></div><div class="square" style="background-color: white;"></div>
    <div class="square" style="background-color: white;"></div>
    <div class="square" style="background-color: white;"></div>
</div>
但它似乎没有达到我想要的效果,我在控制台中遇到了以下错误:
Uncaught DataCloneError:未能对“IDBObjectStore”执行“put”:无法克隆对象。


我需要做什么来存储此div信息,以便稍后将其返回到页面中?

您不能将HTML元素直接存储在数据库中;您只能直接存储JSON。因此,在存储之前,您需要将div转换为某种数据结构格式。

您可能希望使用
$('.easel').HTML()
获取HTML,而不是将元素作为对象。但可能与您的问题无关。它现在看起来正在节省,所以谢谢您。我从数据库中提取的结果如下所示:Promise{cancel:function,[[PromiseStatus]]:“已解析”,[[promisesvalue]]:Object}cancel:function(){returnthis}\uuuu proto\uuu:PromiseStatus[[PromiseStatus]]:“已解析”[[promisesvalue]]:Objectoffset:0rows:Array[3]total_rows:3_uuuproto_uuuu:Object您知道如何使用[[PromiseValue]]获取div数组吗?您是否使用jQuerys Ajax或Angulars$http来执行get请求?您列出的那些方法只是在调用中承诺的,看起来不像来自服务器的实际数据。不,我不是。从数据库文档()中可以看到,db.allDocs是我所需要做的全部。啊,对不起。我看到了你的新问题,没有意识到你就是这样得到结果的。我没有使用数据库的经验,所以我会让其他人回答,祝你好运!
window.saveBoard = function() {
    var db = new PouchDB('tiles');
    var remoteCouch = false;
    var current_layout = $('.easel');
    var new_board = {
        _id: new Date().toISOString(),
        board: current_layout
    }
    db.put(new_board, function callback(err, result) {
        if(!err) {
            console.log("Successfully saved new board.");
        }
    })
}