使用JavaScript获取Django模板指定键值数据


Posted in Javascript onMay 27, 2020

Django中利用js来操作数据的常规操作一般为点(.)操作符来获取字典或列表的数据,一般如{{data.0}},{{data.arg}}

但有时如果数据是嵌套类型的数据时,直接获取某个值就变得困难了,比如下面的格式要获取

correct中qxl的值

startArgsSet={"correct":{"qxl":0,"kkx":0},"reliable":{"qxl":0,"kkx":0},"security":{"qxl":0,"kkx":0},"understand":{"qxl":0,"kkx":0},"entropy":{"qxl":0,"kkx":0},
"mature":{"qxl":0,"kkx":0},"active":{"qxl":0,"kkx":0},"service":{"qxl":0,"kkx":0},"file":{"qxl":0,"kkx":0},
"tech":{"qxl":0,"kkx":0},"property":{"qxl":0,"kkx":0},"organize":{"qxl":0,"kkx":0},"develop":{"qxl":0,"kkx":0},
"source":{"qxl":0,"kkx":0},"update":{"qxl":0,"kkx":0},"fix":{"qxl":0,"kkx":0},
"quality":{"qxl":0,"kkx":0},"meanNum":{"qxl":0,"kkx":0},"variance":{"qxl":0,"kkx":0}
}

这时候如果改变数据格式为列表中的无嵌套字典格式比较麻烦,可以自定义过滤器来获取数据,

from django.template.defaulttags import register

@register.filter
def getArgQxlValue(dictionary,arg):
  return dictionary[arg]['qxl']
  
@register.filter
def getArgKkxValue(dictionary,arg):
  return dictionary[arg]['kkx']
  
@register.filter
def getArgName(dictionary,arg):
  return dictionary[arg]['name']

在模板中就可以以这样写

<!-- the second important page of the project-->
{% load staticfiles %}

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>超标信息</title>

   <script src="{% static 'js/a-mynewjs.js' %}"></script>

</head>

<body>

 {{ guestSetArgs|safe }}<br><br><br>
 
 {{ warningdata|safe }}<br><br>
 
 <script>
 {% for i in guestSetArgs %}
  {% for j in warningdata %} 
    if("{{i}}"=="{{j}}")
    {
      if(Number({{warningdata|getArgQxlValue:j}})>Number({{guestSetArgs|getArgQxlValue:i}}))
      var setArgStr="{{warningdata|getArgName:i}} 超出阀值  阀值:{{guestSetArgs|getArgQxlValue:j}}  检测值:{{warningdata|getArgQxlValue:j}}<br>"
      document.write(setArgStr);
    }
    
  {% endfor %} 
 {% endfor %} 
 
  </script>
</body>
</html>

形如{{warningdata|getArgQxlValue:j}},就可以获取到里面的值了

使用JavaScript获取Django模板指定键值数据

稍做美化

使用JavaScript获取Django模板指定键值数据

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
使用 Node.js 做 Function Test实现方法
Oct 25 Javascript
JavaScript实现把rgb颜色转换成16进制颜色的方法
Jun 01 Javascript
Jquery-1.9.1源码分析系列(十一)之DOM操作
Nov 25 Javascript
JavaScript的new date等日期函数在safari中遇到的坑
Oct 24 Javascript
Angular JS 生成动态二维码的方法
Feb 23 Javascript
JS中showModalDialog关闭子窗口刷新主窗口用法详解
Mar 25 Javascript
react-router实现跳转传值的方法示例
May 27 Javascript
Vue中之nextTick函数源码分析详解
Oct 17 Javascript
详解用Node.js写一个简单的命令行工具
Mar 01 Javascript
React实现全局组件的Toast轻提示效果
Sep 21 Javascript
微信小程序实现日历签到
Sep 21 Javascript
js实现碰撞检测
Jan 29 Javascript
基于Vue CSR的微前端实现方案实践
May 27 #Javascript
Node.js API详解之 vm模块用法实例分析
May 27 #Javascript
jQuery实现鼠标滑动切换图片
May 27 #jQuery
js验证账户名是否重复
May 26 #Javascript
小程序富文本提取图片可放大缩小
May 26 #Javascript
微信小程序自定义联系人弹窗
May 26 #Javascript
微信小程序单选框自定义赋值
May 26 #Javascript
You might like
咖啡与水的关系
2021/03/03 冲泡冲煮
无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装最快的解决办法
2010/08/01 PHP
使用php转义输出HTML到JavaScript
2015/03/27 PHP
PHP生成静态HTML页面最简单方法示例
2015/04/09 PHP
php实现简单的语法高亮函数实例分析
2015/04/27 PHP
Nginx服务器上安装并配置PHPMyAdmin的教程
2015/08/18 PHP
CI操作cookie的方法分析(基于helper类库)
2016/03/28 PHP
php面向对象之反射功能与用法分析
2017/03/29 PHP
PhpStorm2020 + phpstudyV8 +XDebug的教程详解
2020/09/17 PHP
TextArea 控件的最大长度问题(js json)
2009/12/16 Javascript
防止xss和sql注入:JS特殊字符过滤正则
2013/04/18 Javascript
用IE重起计算机或者关机的示例代码
2014/03/10 Javascript
jQuery 取值、赋值的基本方法整理
2014/03/31 Javascript
举例讲解如何判断JavaScript中对象的类型
2016/04/22 Javascript
JS模仿手机端九宫格登录功能实现代码
2016/04/28 Javascript
bootstrap table配置参数例子
2017/01/05 Javascript
jQuery插件FusionCharts绘制2D双折线图效果示例【附demo源码】
2017/04/14 jQuery
用Fundebug插件记录网络请求异常的方法
2019/02/21 Javascript
JavaScript常用工具函数大全
2020/05/06 Javascript
python使用opencv进行人脸识别
2017/04/07 Python
Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
2018/03/19 Python
Linux-ubuntu16.04 Python3.5配置OpenCV3.2的方法
2018/04/02 Python
python 判断txt每行内容中是否包含子串并重新写入保存的实例
2020/03/12 Python
keras 自定义loss model.add_loss的使用详解
2020/06/22 Python
python实现扫雷游戏的示例
2020/10/20 Python
Pandas DataFrame求差集的示例代码
2020/12/13 Python
html5中audio支持音频格式的解决方法
2018/08/24 HTML / CSS
荷兰皇家航空公司官方网站:KLM Royal Dutch Airlines
2017/12/07 全球购物
Ryderwear澳洲官网:澳大利亚高端健身训练装备品牌
2018/09/18 全球购物
阿联酋优惠券服务:Living Kool
2019/12/12 全球购物
指导教师评语
2014/04/26 职场文书
省级优秀毕业生主要事迹
2014/05/29 职场文书
停车场管理协议书范本
2014/10/08 职场文书
2015年机关后勤工作总结
2015/05/26 职场文书
导游带团欢迎词
2015/09/30 职场文书
Mysql索引失效 数据库表中有索引还是查询很慢
2022/05/15 MySQL