javascript - mvc - ERROR: Kendo "Algo" no es una función
kendoui for jquery (1)
Así que estoy tratando de convertir mi sitio HTML / Javascript simple (que funciona bien) en un proyecto ASP MVC4. Lo que hago es obtener y XML y usar y XSLT para transformar. Literalmente uso el código de aquí para hacer eso
En mi _Layout.cshtml
utilizo la afeitadora para cargar el recurso
<!DOCTYPE html>
<html>
<head>
<title>@ViewBag.Title</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
... things...
@Scripts.Render("~/bundles/kendoScripts")
@Scripts.Render("~/bundles/customScript")
@Styles.Render("~/Content/themes/Kendo")
@Styles.Render("~/Content/themes/customCSS")
mi vista que usa el diseño es muy directa, esto es todo lo que está en la página
@using Summ.ExtensionCode
@model SumMVC.Models.SummaryModel
@{
ViewBag.Title = "_Summary";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<div data-role="content">
@Html.RenderXml(Model.ProgramFilename, Model.StylesheetFilename, Model.Parameters)
</div>
En @Scripts.Render("~/bundles/customScript")
, hay un archivo JS, renderpage.js que tiene este código $(this).kendoDropDownList();
donde este es un elemento selecto Pero me .kendoDropDownList();
un error que .kendoDropDownList();
no es una función. El error de firebug: TypeError: $(...).kendoDropDownList is not a function
y el errror de GoogleChrome UnEdge Uncaught TypeError: Object [object Object] has no method ''kendoDropDownList''
. Parece que en mi paquete el archivo JS kendo.all.min.js no se empieza a cargar aquí es lo que parece
bundles.Add(new ScriptBundle("~/bundles/kendoScripts")
.Include("~/Scripts/kendoui/kendo.web.min.js")
.Include("~/Scripts/kendoui/kendo.all.min.js")
);
....
bundles.Add(new ScriptBundle("~/bundles/customScript")
.....
.Include("~/Scripts/SummaryScript/renderpage.js")
....
);
Supongo que tal vez el código se está ejecutando antes de que kendo.all.min.js termine de cargarse, pero como puede ver más arriba, renderpage.js está después del kendo. ¿Alguna idea o idea?
ACTUALIZAR
Olvidé agregar que cuando cargué manualmente el recurso en el proyecto MVC en la etiqueta principal
<script type="text/javascript" src="~/Scripts/kendoui/kendo.web.min.js"></script>
<script type="text/javascript" src="~/Scripts/kendoui/kendo.all.min.js"></script>
....
<script type="text/javascript" src="~/Scripts/ExecSummaryScript/renderpage.js"></script>
funciona bien.
Actualización2
Resulta que el archivo Kendo JS no se está cargando en absoluto. Verifico el recurso en la consola de desarrollo y noto que ni siquiera está allí. De cerca, observo que todos los recursos están cargados, excepto algunos archivos .min.js
. Hay unos pocos cargados, pero algunos que no están cargados son jquery-ui-1.10.3.min.js y jquery.browser.min.js.
Sabía que iba a ser algo estúpido. Resulta que es un gothcha MVC4. Tuve que cambiar el nombre de mi archivo. Aparentemente no me gustan los archivos con la extensión min.js
Encontré la respuesta aquí