Javascript 添加带有属性的Html标记
我的聚合元素显示了它作为属性传递的一些属性。content属性可能包含一些html标记,如Javascript 添加带有属性的Html标记,javascript,html,properties,polymer,Javascript,Html,Properties,Polymer,我的聚合元素显示了它作为属性传递的一些属性。content属性可能包含一些html标记,如或。我面临的问题是,Polymer不会将标记添加到DOM树中,而是像普通文本一样打印它们。有没有办法强制“添加DOM树” 整个要素: <link rel="import" href="paper-toolbar/paper-toolbar.html"> <link rel="import" href="iron-collapse/iron-collapse.html"> <li
或
。我面临的问题是,Polymer不会将标记添加到DOM树中,而是像普通文本一样打印它们。有没有办法强制“添加DOM树”
整个要素:
<link rel="import" href="paper-toolbar/paper-toolbar.html">
<link rel="import" href="iron-collapse/iron-collapse.html">
<link rel="import" href="paper-material/paper-material.html">
<dom-module id="card-element" is="auto-binding">
<style>
#contentWrapper {
padding: 10px 15px;
}
#toolbar {
--paper-toolbar-background: #607D8B;
--paper-toolbar: {
font-size: 125%;
opacity: 0.9;
};
}
.maxWidth {
width: 100%;
}
</style>
<template>
<paper-material elevation="2" class="maxWidth" id="card" animatedShadow="1">
<paper-material elevation="1" class="maxWidth">
<paper-toolbar on-click="toggleCollapse" id="toolbar" justify="justified">
<span class="title">{{convertedDate}}</span><span class="title">{{fach}}</span>
</paper-toolbar>
</paper-material>
<iron-collapse id="collapse">
<div id="contentWrapper">
<span>{{content}}</span>
</div>
</iron-collapse>
</paper-material>
</template>
<script>
Polymer({
is: "card-element",
properties: {
opened: {
type: Boolean,
value: false
},
fach: {
type: String,
value: "u-oh an Error"
},
content: {
type: String,
value: "u-oh an Error"
}
},
toggleCollapse: function() {
if(this.opened) {
this.$.collapse.hide();
this.$.card.elevation = "2";
this.opened = false;
}
else {
this.$.collapse.show();
this.$.card.elevation = "5";
this.opened = true;
}
},
ready: function() {
var date = new Date(this.datum);
this.convertedDate = date.getDate() + "." + (date.getMonth() + 1) + "." + date.getFullYear();
}
});
</script>
</dom-module>
#内容包装器{
填充:10px 15px;
}
#工具栏{
--纸张工具栏背景:#607D8B;
--图纸工具栏:{
字体大小:125%;
不透明度:0.9;
};
}
.maxWidth{
宽度:100%;
}
{{convertedDate}{{fach}}
{{content}}
聚合物({
是:“卡元素”,
特性:{
打开:{
类型:布尔型,
值:false
},
法赫:{
类型:字符串,
值:“u-oh错误”
},
内容:{
类型:字符串,
值:“u-oh错误”
}
},
toggleCollapse:function(){
如果(本文件已打开){
这是。$.collapse.hide();
此.$.card.elevation=“2”;
this.opened=false;
}
否则{
这是。$.collapse.show();
此.$.card.elevation=“5”;
this.opened=true;
}
},
就绪:函数(){
var日期=新日期(此数据);
this.convertedDate=date.getDate()+“+”(date.getMonth()+1)+“+”+date.getFullYear();
}
});
不允许使用html
但你可以做到
<dom-module id="html-echo">
<style>
:host {
display: block;
}
</style>
<template>
</template>
</dom-module>
<script>
(function () {
Polymer({
is: 'html-echo',
properties: {
html: {
type: String,
observer: '_htmlChanged'
}
},
_htmlChanged: function (neo) {
// WARNING: potential XSS vulnerability if `html` comes from an untrusted source
this.innerHTML = neo;
}
});
})();
</script>
:主持人{
显示:块;
}
(功能(){
聚合物({
是:“html echo”,
特性:{
html:{
类型:字符串,
观察者:“\u htmlChanged”
}
},
_htmlChanged:函数(neo){
//警告:如果“html”来自不受信任的源,则可能存在XSS漏洞
this.innerHTML=neo;
}
});
})();
像
<html-echo html="[[htmlText]]"></html-echo>
不允许使用html 但你可以做到
<dom-module id="html-echo">
<style>
:host {
display: block;
}
</style>
<template>
</template>
</dom-module>
<script>
(function () {
Polymer({
is: 'html-echo',
properties: {
html: {
type: String,
observer: '_htmlChanged'
}
},
_htmlChanged: function (neo) {
// WARNING: potential XSS vulnerability if `html` comes from an untrusted source
this.innerHTML = neo;
}
});
})();
</script>
:主持人{
显示:块;
}
(功能(){
聚合物({
是:“html echo”,
特性:{
html:{
类型:字符串,
观察者:“\u htmlChanged”
}
},
_htmlChanged:函数(neo){
//警告:如果“html”来自不受信任的源,则可能存在XSS漏洞
this.innerHTML=neo;
}
});
})();
像
<html-echo html="[[htmlText]]"></html-echo>