Javascript jQuery UI对话框错误,按钮导致HierarchyRequestError
我有一段javascript,我在其他页面中使用得很好,但在新页面中抛出了一个HierarchyRequestError。这让我怀疑这是我页面中HTML的一个问题。下面是一个大大简化的代码版本(仍然会产生错误):Javascript jQuery UI对话框错误,按钮导致HierarchyRequestError,javascript,jquery,jquery-ui,jquery-templates,Javascript,Jquery,Jquery Ui,Jquery Templates,我有一段javascript,我在其他页面中使用得很好,但在新页面中抛出了一个HierarchyRequestError。这让我怀疑这是我页面中HTML的一个问题。下面是一个大大简化的代码版本(仍然会产生错误): window.webframe.loginDialog=函数(){ $(“正文”)。附加(“”); $(“#dialogSpace”).load(“/login/index#loginContainer”,函数(){ $(“#登录容器”)。对话框({ 按钮: [ { 文字:“你好”,
window.webframe.loginDialog=函数(){
$(“正文”)。附加(“”);
$(“#dialogSpace”).load(“/login/index#loginContainer”,函数(){
$(“#登录容器”)。对话框({
按钮:
[
{
文字:“你好”,
单击:函数()
{alert('Hi');}
}
]
});
});
};
$('#lnkLogin')。单击(函数(){
webframe.loginDialog();
返回false;
});
如果运行此代码,我会从jQuery中得到以下错误:
HierarchyRequestError:无法在指定点插入节点
在等级制度中
如果我删除了按钮定义,那么错误就会消失。如果按钮选项本身在那里,这没有什么区别,但是如果我放入任何类型的单个按钮处理程序,就会发生错误。我还尝试了在选项中定义按钮的两种样式
我正在使用jQuery1.7.2和jQueryUI1.8.23,我已经尝试升级到jQuery1.8,没有任何更改
正如我上面所说的,我强烈怀疑这是HTML结构的问题,因为完全相同的代码文件在其他地方使用不同的页面很好,我将继续关注这一点,但这很奇怪,我想看看这是否对其他人有影响
更新:我查看了所有其他js引用,发现包括jquery.template()是导致它的原因。尝试更新到最新版本,但已使用3年,问题仍然存在。必须将现有代码移植到最新的模板库。这不是您要寻找的答案,但我也遇到了同样的问题。升级到jQuery 2.02和jQuery UI 1.10.4并没有消除该问题。最后我删除了jquery.template.js。这不是您想要的答案,但我也有同样的问题。升级到jQuery 2.02和jQuery UI 1.10.4并没有消除该问题。最后,我删除了jquery.template.js。Matthew,你能把JSFIDLE和html结合起来吗。我想尝试一下。Matthew,你能把JSFIDLE和html结合起来吗。我想尝试一下。是的,删除jQuery.Template也是我们最终要做的事情。感谢大家对这个老问题的关注。是的,删除jQuery.Template也是我们最后要做的。谢谢你对这个老问题的关注。
window.webframe.loginDialog = function () {
$("body").append('<div id="dialogSpace" />');
$("#dialogSpace").load("/login/index #loginContainer", function () {
$("#loginContainer").dialog({
buttons:
[
{
text: "Hi",
click: function()
{ alert('Hi');}
}
]
});
});
};
$('#lnkLogin').click(function () {
webframe.loginDialog();
return false;
});