为什么我不能在项目中使用Kendo UI控件?

时间:2013-01-11 18:26:42

标签: javascript asp.net-mvc telerik kendo-ui

我刚开始使用Kendo UI并做了this教程来学习基础知识,我在Visual Studio 202上为MVC Web应用程序项目创建了一个新的Kendo UI,并决定测试我学到的东西,我试图像教程中一样放置网格但无法运行它。

我的意思是剑道功能无法被识别,这不应该发生,因为项目已经有了带有js文件的kendo文件夹。

以下是我的View的样子:

<!DOCTYPE html>

<html>
<head >
    <link href="Content/kendo/2012.2.710/kendo.common.min.css" rel="stylesheet" type="text/css" />
    <link href="Content/kendo/2012.2.710/kendo.default.min.css" rel="stylesheet" type="text/css" />
    <title><%: ViewBag.Title %></title>
</head>
    <body>
        <h1><%: ViewBag.GestionTitle %></h1>
        <div id="tweetGrid"></div>

        <script src="Scripts/jquery-1.8.2.min.js"></script>
        <script src="Scripts/kendo/2012.2.710/kendo.web.min.js"></script>
        <script>            
            $(function () {
                var ds = new kendo.data.DataSource({
                    transport: {
                        read: {
                            url: "http://search.twitter.com/search.json?q=kendoui",
                            dataType: "jsonp"
                        }
                    },
                    schema: {
                        data: "results"
                    }
                });
                $("#tweetGrid").kendoGrid({
                    columns: ["from_user", "from_user_name", "text"],
                    dataSource: ds
                });
            });
        </script>
    </body>
</html>

我已尝试将脚本放在头部和体内,但无法使kendo功能起作用。我错过了什么?

1 个答案:

答案 0 :(得分:3)

根据您的评论...

呈现的HTML在错误的位置引用资源文件,因此出现404错误。请记住,视图本身没有关于URL将呈现它的概念。看来这个视图是在/Test/路径下呈现的。由于脚本是使用相对路径引用的,因此它正在查找该相对路径。您使用的是什么版本的MVC?他们改变了“正确的方式”,几次引用视图资源。

例如,您可以像这样引用脚本:

<script src="<%: Url.Content("~/Scripts/kendo/2012.2.710/kendo.web.min.js") %>"></script>

这实质上要求服务器端预处理来确定文件的正确客户端路径(基于相对于应用程序根目录的服务器端路径)并在script标记中输出该路径。因此,无论在何处使用视图,它都应始终具有资源文件的正确路径。

您希望使用任何页面资源执行此操作。 JavaScript文件,CSS文件,甚至适当的图像。