៚竹ོོ蜻蜓 2021-02-05 16:23 采纳率: 100%
浏览 112
已采纳

html获取flask数据库数据后怎么传到JS当中使用?

html从flask获取了数据库的数据,怎么将获取的数据变成二维数组后供JS使用呢?

下面就是我从flask获取了userthings这个变量,是从数据库中获取的符合条件的若干行,

我现在只能像代码段中的这样循环中调取不同行中的不同列的value

{% for thing in userthings %}
    <span id="title" style="display:none" o="{<!-- -->{thing.title}}"></span>
    <span id="beginTime" style="display:none" o="{<!-- -->{thing.beginTime}}"></span>
    <span id="endTime" style="display:none" o="{<!-- -->{thing.endTime}}"></span>
    <span id="tag1" style="display:none" o="{<!-- -->{thing.tag1}}"></span>
{% endfor %}

后面获取的时候就也只是获取了一个值

var title = document.getElementById('title').getAttribute('o');
var beginTime = document.getElementById('beginTime').getAttribute('o');
var endTime = document.getElementById('beginTime').getAttribute('o');

想求助一下,怎么把整个二元数组传到JS部分

想求助一下,怎么把整个二元数组传到JS部分

我尝试直接获取userthings,但是JS获取的部分也不知道如何处理成可以用下标调用的数组

<div id="uthings" o="{<!-- -->{userthings}}" style="display:none"></div>
var userthings = document.getElementById('uthings').getAttribute('o');
alert(userthings);
alert(userthings[0]);

发现直接变成字符串了

问题有点乱,感谢阅读,希望得到大神帮助!

展开全部

  • 写回答

1条回答 默认 最新

  • AllPromise 2021-02-06 03:25
    关注

    你这个格式不是正常的,你得替换字符,把 = 替换成 :  ,括号替换成大括号,row这个没有也替换了,最后用的eval函数去掉中括号外面的引号,下面的函数你试试看
    arr = eval(arr.replace(/=/g,':').replace(/[()]/g,'}').replace(/row}/g,'{'));
    console.log(arr[0])

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    ៚竹ོོ蜻蜓 2021-02-15 08:55

    谢谢,我原来的数据格式里面没有等号,我后来替换了括号,直接用了后端没有row的数据,已经解决啦,还是很感谢!

    回复
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部