2

我有一个关于剑道 UI 的问题。我有一个现有的 MVC4 项目,我想在其中使用一些 Kendo 扩展,即编辑器。目前该项目使用 jqWidgets 作为 UI 框架。

我打开 VS 2012,加载项目并使用 Telerik 菜单在项目中添加对 Kendo 的引用。该向导添加了所有必要的引用并对 web.config 文件进行了更改。到目前为止,一切都很好。但是,我有两个问题:

  • 当我尝试使用 Kendo Html Helper 时,我没有智能感知,并且 Kendo 下划线表示 HtmlHelper 没有“Kendo”的定义。我<add namespace="Kendo.Mvc.UI" />在我的主 web.config 以及 Views 文件夹中的 web.config 中都有。奇怪的是,当我运行该站点时,我没有收到错误,但编辑器没有加载其初始内容,如果我尝试与之交互,我收到以下错误:(我的第二个问题)
  • TypeError: invalid 'in' operand e - 我猜在网站的某个地方,有一个冲突导致了这个错误,但我找不到它。以下是我在 _Layout.cshtml 中加载所有 JS 文件的方法:
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/jqueryui")
@Scripts.Render("~/Scripts/kendo/2013.2.918/kendo.all.min.js")
@Scripts.Render("~/Scripts/kendo/2013.2.918/kendo.aspnetmvc.min.js")
@Scripts.Render("~/Scripts/kendo.modernizr.custom.js")

我不确定这些问题是否相关。我的 jQuery 版本是 1.9.1,我使用的是最新的剑道版本 (2013.2.918.340)

任何帮助将不胜感激。

以下是我在视图中使用编辑器的方式:

@(Html.Kendo().Editor()
                      .Name("editor")
                      .HtmlAttributes(new { style = "width: 700px; height: 400px" })
                      .Value(@<text>

                            <p>
                                Some text
                            </p>

                      </text>)
                      .ImageBrowser(imageBrowser => imageBrowser
                        .Image("~/Content/UserFiles/Images/{0}")    
                        .Read("Read", "ImageBrowser")
                        .Create("Create", "ImageBrowser")
                        .Destroy("Destroy", "ImageBrowser")
                        .Upload("Upload", "ImageBrowser")
                        .Thumbnail("Thumbnail", "ImageBrowser"))
                )
4

1 回答 1

0

第一个问题的解决方案是仅将命名空间引用添加到web.config文件Views夹中的文件。无需将其添加到 root web.config。之后重新启动 Visual Studio 并重新加载您的项目。一切都应该没问题,智能感知应该可以工作。

至于第二个问题,这很难猜。您能否在将内容加载到 HTML 编辑器的位置显示您的代码?

于 2013-10-20T04:30:59.743 回答