javascript - html标签的class属性里面怎么嵌入变量
问题描述
var id = snapshot.val().id;var content = snapshot.val().content;var textObj = ’<p class='task-item'><input type='checkbox' /><span class='ui-icon ui-icon-clock'></span><span class='task-content'>’+content+’</span><span class='task-detail'> detail</span></p>’;
我想把第一行的id变量(是一个数字)加到第三行p标签的class属性里面,可以直接嵌进去吗?
问题解答
回答1:var id = snapshot.val().id; var content = snapshot.val().content; var textObj = ’<p class='task-item’+id+’'> <input type='checkbox' /> <span class='ui-icon ui-icon-clock'></span> <span class='task-content'>’+content+’</span> <span class='task-detail'> detail</span> </p>’;回答2:
你的问题实质是如何改变拼接出来的HTML模板,本质是拼接字符串。最笨的方法
var textObj1 = ’<p class='task-item'’;var textObj2 = ’> <input type='checkbox' /> <span class='ui-icon ui-icon-clock'></span> <span class='task-content'>’+content+’</span> <span class='task-detail'> detail</span> </p>’;textObj = textObj1 + id + textObj2
或者直接用ES6 字符串模板,这样比较符合你的变量嵌套。但兼容性会有问题。
var textObj = `<p class='task-item${id}'><input type='checkbox' /><span class='ui-icon ui-icon-clock'></span><span class='task-content'>’+content+’</span><span class='task-detail'> detail</span></p>`;回答3:
由于你这个其实是JS拼接字符串,所以直接用JS的+将字符串拼接进去。既然你都知道怎么把content拼接进去了,那拼接id也是同理
ES5var id = snapshot.val().id;var content = snapshot.val().content;var textObj = ’<p class='task-item’ + id + ’'> <input type='checkbox' /> <span class='ui-icon ui-icon-clock'></span> <span class='task-content'>’ + content + ’</span> <span class='task-detail'> detail</span></p>’;
当然,你也可以使用ES6的模板字符串,不过浏览器兼容性会有问题,具体如下:(注意,整个textObj以`开始,以`结束)
ES6var id = snapshot.val().id;var content = snapshot.val().content;var textObj = `<p class='task-item${id}'> <input type='checkbox' /> <span class='ui-icon ui-icon-clock'></span> <span class='task-content'>${content}</span> <span class='task-detail'> detail</span></p>`;回答4:
Addattribute 试试
相关文章:
1. css3 - 微信前端页面遇到的transition过渡动画的bug2. css - 文字排版问题,内容都是动态抓出来的,字数不一定。如何对齐啊3. 网页爬虫 - 关于Python的编码与解码问题4. css3 - 微信小程序如何把radio改成2个选择按钮的样式5. javascript - 为什么var obj = {}创建对象的方法里面不能用this.xxx来声明属性 ?6. javascript - router.push无效7. javascript - 浏览器回退,如何保证js对dom的操作保存下来8. selenium-selenium-webdriver - python 将当前目录加入到 环境变量9. css - input间的间距和文字上下居中10. 为什么javascript 18014398501093363 == 18014398501093364 返回ture

网公网安备