我试图在 Polymer 中实现 jsGrid,但被困在需要将目标网格 DOM 元素获取到jsGrid()
函数的地方。无法$("#jsGrid")
在聚合物中产生等效物。
我已经使用该import
命令在聚合物组件文件本身中导入了所有必需的源文件。
// 渲染函数
render(){
return html`
${jsGrid_css}
${jsGrid_theme_css}
<h2>Hello ${this.name}!</h2>
<div id="jsGrid"></div>
`;
}
// 渲染网格方法
renderGrid(){
const gridEle = document.getElementById("jsGrid")
const gridNode = this.shadowRoot.querySelector("#jsGrid");
console.log($("#jsGrid"))
//--> output to this shows no element
$("#jsGrid").jsGrid({
width: "100%",
height: "400px",
inserting: true,
editing: true,
sorting: true,
paging: true,
data:this.clients,
fields: [
{ name: "Name", type: "text", width: 150, validate: "required" },
{ name: "Age", type: "number", width: 50 },
{ name: "Address", type: "text", width: 200 },
{ name: "Country", type: "select", items: this.countries, valueField: "Id", textField: "Name" },
{ type: "control" }
]
});
}
当我使用$("#jsGrid")
. 这可能是因为当我替换
为
或替换时,jsGrid()
方法无法获取具有所需属性的 DOM 元素$("#jsGrid")
this.shadowRoot.querySelector("#jsGrid")
document.getElementById("jsGrid")
提前致谢!