为了账号安全,请及时绑定邮箱和手机立即绑定

handlebars在ie8下编译html标签属性值结果无引号,导致当属性值含空格时取属性值不完整

handlebars在ie8下编译html标签属性值结果无引号,导致当属性值含空格时取属性值不完整

守着星空守着你 2019-04-16 17:06:04
1.页面模版:{{#eachmyTestData}}{{#if_eqfuncLevelcompare="1"}}{{/if_eq}}{{/each}}2.这是ie8下打出的日志(模版编译后的html):3.这是Chrome下打出的日志(模版编译后的html):4.以上为同一套代码在不同浏览器的运行结果,其中Chrome、FF、IE9+的结果是一样的,惟有在ie8下编译过后html标签属性值没有引号;5.导致的问题:当属性值中含空格时,取li的属性title时,拿到的值不完整。ie8下:$("li").attr("title")="user"Chrome下:$("li").attr("title")="usernametest"
查看完整描述

2 回答

?
手掌心

TA贡献1942条经验 获得超3个赞

这个是转义问题
{{#eachmyTestData}}
{{#if_eqfuncLevelcompare="1"}}
{{/if_eq}}
{{/each}}
双大括号换三大括号就好了
                            
查看完整回答
反对 回复 2019-04-16
?
三国纷争

TA贡献1804条经验 获得超7个赞

提供一个备选方案,在handlebars-helpers中新增方法构建html标签:
Handlebars.registerHelper("buildLeftTag",function(data){
returnnewHandlebars.SafeString('<');
});
Handlebars.registerHelper("buildRightTag",function(data){
returnnewHandlebars.SafeString('>');
});
页面模版更改为:
{{buildLeftTag}}lititle="{{title}}"{{buildRightTag}}
此方案可解决ie8下的该问题。
                            
查看完整回答
反对 回复 2019-04-16
  • 2 回答
  • 0 关注
  • 537 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号