无法在 Vaadin 7 中使用 jquery 将 html 文本加载到 div 标签中
cannot load html text into div tag using jquery in Vaadin 7
非常感谢您提前提供的帮助和支持。使用 vaadin 7 AbstractJavaScriptComponent,我试图加载 html 片段来代替 div 标记,但屏幕不显示任何内容。无法弄清楚原因。请帮忙!
window.de_vaadin_ui_myapp_MyWidget = function() {
$(document).ready(function(){
$("#content").load("html/NewFile.html");
});
var element = this.getElement();
this.onStateChange = function() {
element.innerHTML ="<div id=\"content\"></div>";
};
};
the html file is located in the package de.vaadin.ui.myapp.MyWidget.html
这里有很多地方可能出错。如果您描述任何相关的日志消息等,将会有所帮助。
我可以看到为什么这对你不起作用的多种不同原因:
- 连接器逻辑根本不是 运行,例如由于
@JavaScript
注释值或连接器函数名称中的拼写错误(即 de_vaadin_ui_myapp_MyWidget
)。您可以通过添加例如验证它是否实际加载console.log(this.getElement())
在顶层函数中。
- HTML 请求错误URL。检查浏览器开发人员工具中的网络检查器,以查看实际加载了哪个绝对 URL 以及 returns 是预期结果还是仅例如404 响应。如果这是问题所在,您可以将 HTML 文件移动到其他地方,或者将传递给
load
的相对 URL 更改为
- 每次发生状态更改事件时都会重置扩展元素的内容,因为
innerHTML
已重新分配。将分配 innerHTML
的语句移到 onStateChange
处理程序之外可能会有所帮助,这样它在初始化期间只会 运行 一次。这也可能导致 $("#content")
在 div 甚至还没有创建之前就已经是 运行 的情况,导致它找不到目标元素。
非常感谢您提前提供的帮助和支持。使用 vaadin 7 AbstractJavaScriptComponent,我试图加载 html 片段来代替 div 标记,但屏幕不显示任何内容。无法弄清楚原因。请帮忙!
window.de_vaadin_ui_myapp_MyWidget = function() {
$(document).ready(function(){
$("#content").load("html/NewFile.html");
});
var element = this.getElement();
this.onStateChange = function() {
element.innerHTML ="<div id=\"content\"></div>";
};
};
the html file is located in the package de.vaadin.ui.myapp.MyWidget.html
这里有很多地方可能出错。如果您描述任何相关的日志消息等,将会有所帮助。
我可以看到为什么这对你不起作用的多种不同原因:
- 连接器逻辑根本不是 运行,例如由于
@JavaScript
注释值或连接器函数名称中的拼写错误(即de_vaadin_ui_myapp_MyWidget
)。您可以通过添加例如验证它是否实际加载console.log(this.getElement())
在顶层函数中。 - HTML 请求错误URL。检查浏览器开发人员工具中的网络检查器,以查看实际加载了哪个绝对 URL 以及 returns 是预期结果还是仅例如404 响应。如果这是问题所在,您可以将 HTML 文件移动到其他地方,或者将传递给
load
的相对 URL 更改为 - 每次发生状态更改事件时都会重置扩展元素的内容,因为
innerHTML
已重新分配。将分配innerHTML
的语句移到onStateChange
处理程序之外可能会有所帮助,这样它在初始化期间只会 运行 一次。这也可能导致$("#content")
在 div 甚至还没有创建之前就已经是 运行 的情况,导致它找不到目标元素。