TypeError:kendoWindow不是函数

Ray*_* K. 3 css xslt jquery kendo-ui

我正试图解决一个让我摸不着头脑的客户端问题.发生了什么,在我的表单上,我单击一个按钮打开一个窗口,我得到了可怕的"TypeError:kendoWindow不是一个函数"错误.

在发布我的代码之前,我应该提一些关于这个环境的事情:

  • 有问题的按钮包含在最初隐藏的DIV中.因此,按钮在可见之前不作为对象存在.
  • 控制它的客户端代码实际上包含在包含OnClick事件的XSLT中.
  • XSLT是通过CMS编辑的,而不是直接在文件中编辑.如果我没有弄错,XSLT代码实际上存储在数据库中,而不是存储在文件中.
  • 有两个不同的XSLT:一个用于父窗口(为了这篇文章,我将称之为PARENT),一个用于隐藏的DIV代码(我称之为HIDDEN),一旦它可见就会生效.
所以,这是原始代码.(注意:我没有写这个;是的,我意识到"窗口"不应该被用作变量名.尽管如此,这确实有效,我不相信这会导致我的问题.)

父母XSLT:

//This is contained within $(document).ready(function()
var window = $("#Sponsor").kendoWindow({
height: "100px",
modal: true,
title: "Choose Sponsor",
visible: false,
width: "500px"
}).data("kendoWindow");
Run Code Online (Sandbox Code Playgroud)

HIDDEN XSLT(这包含在XSL:OnClick属性中):

var window = $('#Sponsor').data('kendoWindow');window.center();window.open();
Run Code Online (Sandbox Code Playgroud)

意识到使用"window"作为变量可能是一个问题,我将其更改为如下所示:

家长:

var kSponWin= $("#Sponsor");
if (!kSponWin.data("kendoWindow")) {
kSponWin.kendoWindow({
height: "100px",
modal: true,
title: "Choose Sponsor",
visible: false,
width: "500px"
}).data("kendoWindow");
}
Run Code Online (Sandbox Code Playgroud)

隐:

kSponWin.center().open();
Run Code Online (Sandbox Code Playgroud)

没什么'做'.唯一的区别是现在我的错误是"kSponWin.kendoWindow"而不是"window.kendoWindow不是一个函数".

那么有谁知道我应该做什么?这个问题使我无法进行测试.

提前致谢 ...

Ray*_* K. 8

我想出了我的问题.

我去了Telerik的网站,发现了这个:Kendo小部件不可用或未定义的JavaScript错误.

所以,我看看是否有多个jQuery引用.果然,我找到了一个.我把它删除了,看哪,我的代码又开始工作了.