前端接收flask后端的返回值

前端接收flask返回主要有两种方法,一种是直接在html页面中嵌套语句,一种是利用js解析,后者更具通用性和可修改性。
第一种:
这种方法,后端的返回值可以是字典类型、数组或者单变量,但是不能是json格式,解析不到。data是返回的参数名,与要与前端html对应,名字要相同,前端可以直接取值。
前端代码:

<!DOCTYPE html>
<html lang="zh-CN">
    <head>
        <meta charset="UTF-8">
    </head>
<table border="1"  style="margin:0 auto; background-color:#5abef8;">
    <tr>
        <th>名字</th>
        <th>编号</th> 
    </tr>
{% for i in data %}
    <tr>
        <td>{{ i.name }}<br>{{ i.name }}</td>
        <td>{{ i.num }}<br>{{ i.num }}</td>
    </tr>
{% endfor %}
</table>
</body>
</html>

后端代码:

@app.route("/")
def index():
	dic={}
	dic['name']='xiaomin'
	dic['num']=1
	return render_template('index.html',data=dic)

第二种方法:
这种方法利用了JSON.parse(),可以解析把后端发过来的格式转换成json格式的,当然后端要加一句话。json格式就是通用格式了,可以存放各种类型的数据。
前端代码:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
	<meta charset="UTF-8">	
</head>
<body>
    <!--内容部分-->
	<div id="dataid" d="{{data}}" style="display:none"></div>
</body>
<script>
	var data = document.getElementById('dataid').getAttribute('d');//绑定以获取data值
	dataJson=JSON.parse(data);
	console.log(dataJson.name)
	console.log(dataJson.num)
</script>

后端代码:

@app.route("/")
def index():
	dic={}
	dic['name']='xiaomin'
	dic['num']=1
	dataJson=json.dumps(dic,ensure_ascii=False) #加这句话就可以把字典格式转换成json格式,字典格式在用JSON.parse()解析时会报错,与引号的转义有关系。
	return render_template('index.html',data=dataJson)
  • 9
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值