Kendo ui 剑道Web UI性能

Kendo ui 剑道Web UI性能,kendo-ui,Kendo Ui,我在Web应用程序中使用KendoWebUIDatePicker和NumericTextBox,加载上下文非常慢,大约需要3秒钟。经过进一步调查,发现对服务器的ajax调用在174ms内获得数据,其余时间都花在客户端,这让我感到震惊。使用console.time查看详细信息,发现剑道web UI占用了80%的时间 html dom是使用jquery$.get Ajax方法加载的。成功后,将使用html数据加载文档的div,并运行kendo NumericTextBox和DatePicker $(

我在Web应用程序中使用KendoWebUIDatePicker和NumericTextBox,加载上下文非常慢,大约需要3秒钟。经过进一步调查,发现对服务器的ajax调用在174ms内获得数据,其余时间都花在客户端,这让我感到震惊。使用console.time查看详细信息,发现剑道web UI占用了80%的时间

html dom是使用jquery$.get Ajax方法加载的。成功后,将使用html数据加载文档的div,并运行kendo NumericTextBox和DatePicker

$(".currency").kendoNumericTextBox({ format: "c", decimals: 3, spinners: false });
$(".datepicker").kendoDatePicker();
以上两行代码大约需要2194毫秒

有没有办法提高上述线路的速度


任何帮助都将不胜感激。

问题不在于初始化KendoDatePicker和KendoNumericTextBox,而是在表单中进行初始化

如果从JSFIDLE中删除
(就像您将看到它非常快一样)

知道这一点并假设您确实需要该表单,您可以做的是用
div
元素替换
form
,然后完成一个剑道初始化,用
表单
定义包装新的
div

例如:

替换此项:


...
据此:


...
然后,初始化剑道小部件并创建
表单的代码如下:

console.time(“#kendonumeric文本框”);
$(“.currency”).kendoNumericTextBox({
格式:“c”,
小数:3,
微调器:错误
});
console.timeEnd(“#kendonumeric文本框”);
控制台时间(“kendoDatePicker”)
$(“.datepicker”).kendoDatePicker();
console.timeEnd(“#kendoDatePicker”);
console.time(“#buildForm”);
$(“#形式”)。换行(“”);
console.timeEnd(“#buildForm”)

您的JSFIDLE在此处修改:

根据我的经验,似乎太多了。您正在传输多少条记录?您能发布一个完整的示例说明您正在做什么吗?我只传输了大约74条记录。没有任何意义…让我放一个示例在适当的位置,您将看到所需的时间要少得多…检查此项。单击“转换”并让我知道需要多长时间。这(基本上)是吗你在做什么?我已经检查了你的示例,当我点击transform按钮时需要400毫秒,这听起来不错,但我的按钮需要2230毫秒。以下是示例。我正在使用console.time for log执行所需的时间,因此你应该能够在控制台窗口上看到日志,如#Kendonumeric文本框:1024.000ms和#kendoDatePicker:1206.000msHi,Th这是我的问题,你能解释一下为什么吗?对于那些仍然想知道为什么的人。Telerik在这里解释道: