freemarker-2、模板字符串中的${}跟freemaker冲突的问题
有一个需求是:在table中添加一个行,然后获取该行有一个隐藏的input,是自增的,所以获取当前的后台传递的list集合的size然后加一,一般就是js的增加子节点的操作,以前都是拼接字符串然后往里面新增变量,还一种前端的写法是使用模板字符串,但是跟目前的freemaker中${}冲突
模板字符串:
// 普通字符串
`In JavaScript '\n' is a line-feed.`// 多行字符串
`In JavaScript this is
not legal.`// 字符串中嵌入变量
var name = "Bob", time = "today";
`Hello ${name}, how are you ${time}?` // Hello Bob, how are you today?
${}获取的时候会出现为空异常,它会获取后台传递过来的值,但是后台没有这个值,冲突无法解决
这样只能拼接字符串,拼接字符串比较麻烦,所以想到一个取巧的方法
首先一个字符串、然后将里面的变量替换,然后在编译该字符串,测试正常
代码如下:
// 增加$('.add').click(function(){ var trsize = $(".uptable>tbody").children("tr").length-1;
// alert(trsize);$('.uptable input').attr("disabled",false) $('#editluck').text('保存')var index =Number($(this).context.getAttribute('id'))+1;
// alert(index)if(trsize == index){var str = '<tr class=""><td><input type="text" value="index" style="display:none"/>'+'</td><td><span>彩金数字index:</span><input type="text" value=""/></td>'+'<td><span>奖励金额:</span><input type="text" value=""/></td></tr>'var newstr = str.replace('index',index).replace('index',index);// alert(index);// alert(newstr);$('.btns').before(newstr);}else{layui.use('layer', function(){var layer = layui.layer; layer.alert('请先保存!', {icon: 1});}); }})
目前测试正常,可能投机取巧了,只是放上来记录一下。
freemarker-2、模板字符串中的${}跟freemaker冲突的问题相关推荐
- 在模板字符串中条件判断和遍历
1.在模板字符串中遍历 ${item1.groupDetail.map((item2) => {return `<div id="check_name_box"> ...
- es6模板字符串中标签模板作为参数时产生空元素的问题
当模板字符串作为标签模板使用时,标签函数接受到的参数分别为(arr,-values) arr:模板字符串中所有那些没有变量替换的部分 -values:各个变量替换后的值 即 let a = 'Oh!' ...
- (js)模板字符串中使用循环遍历数据:
(js)模板字符串中使用循环遍历数据: // 数据格式 let wordList = {id: "2",question: "李四",content: [{ n ...
- es6模板字符串中循环遍历数据踩坑
应该很少有这种需求,需要在模板字符串利循环遍历数据,现在框架都有自己模板语法. 我这里踩的坑是,我在模板字符串中用forEach,map遍历循环时,返回值一直是一个undefined 用for循环re ...
- linux中括号 美元符号怎么打,javascript – 美元符号后跟模板字符串中的方括号
看来这是一个语法错误.应该是正确的: `${vendor}Now` Template strings are enclosed by the back-tick (`) (grave accent) ...
- Freemarker基于模板字符串生成静态化html文件
基于字符串生成静态化文件,就不会通过模板文件.ftl了,也就是项目中压根就不存在模板文件,就是通过用户输入或在配置文件中定义一些模板字符串,基于这些字符串来生成静态化文件. 将字符串转换成模板:
- 模板字符串中 嵌套模板字符串
模板字符串中有需求循环数据放到其中,原先我用arr.map(item=><li><a>${arr.content}</a></li>) 这样不符合 ...
- es6 模板字符串中绑定事件的方法
step1: 模板字符传中写法 renderDom() {return `<div data-action="goDetail" data-url="${item. ...
- [译]JavaScript:ES6中的模板字符串简介
原文:http://tc39wiki.calculist.org/es6/template-strings/ ES6中的模板字符串(template string)是一种能在字符串文本中内嵌表达式的字 ...
最新文章
- linux shell 文件路径 分解 解析 切分 ${str:a:b} 用法
- spring 中 Hibernate 事务和JDBC事务嵌套问题
- ssh(Spring+Spring mvc+hibernate)——EmpDaoImpl.java
- kafka生产者开发方式
- OCA第1部分中的Java难题
- ajax和for循环谁难,关于“for”循环中jquery $ .ajax的问题
- spacy 报错 gold.pyx in spacy.gold.GoldParse.__init__() 解决方案
- 可以闭眼入的O'REILLY机器学习神书出新版了!
- freecodecamp能学php吗,freeCodeCamp 学习记录——初级算法「01」翻转字符串
- 树莓派 鼠标延迟问题【Linux】
- 机器博弈 (二) 遗憾最小化算法
- apache .htaccess 转化nginx工具
- C语言实现编译原理的LR分析法,编译原理LR(0)分析器(C语言).pdf
- JavaScript入门基础知识总结
- map集合用于存储信息(映射关系)
- Creo Illustrate动画制作视频教程
- VS-Code安装C++安装教程
- 开发视频实时直播需要用到哪些技术?
- 敏捷开发绩效管理之九:阿米巴经营之软件团队经营什么(上)
- Mysql创建数据库时提示Error 1044 Access denied for user 'sss'@localhost to database 'xxx'