‘JQuery’ no está definido

Estoy trabajando en un proyecto ASP.net creado con la configuración del sistema de archivos local. Estoy usando MVC y Jquery. Jquery funciona bien cuando ejecuto la aplicación en modo de depuración, es decir, en el servidor de desarrollo ASP.net. Estoy intentando alojar la aplicación en IIS 7. En el modo hospedado, no reconoce Jquery y da un error de secuencias de comandos “Jquery no está definido”. Las ubicaciones de los archivos de script no se modifican en ambos modos. ¿Alguien puede tener alguna idea de cuál puede ser la razón y cómo resolver esto?

Mi código se parece a esto;

           //this hides the javascript warning if javascript is enabled (function($) { $(document).ready(function() { $('#jswarning').hide(); }); })(jQuery);   

….

Intente usar la pestaña ‘Net’ de Firebug para ver si el archivo se carga.

También puede configurar Firebug para que falle en todos los errores y ver cuándo ocurre el error en comparación con cuando se carga jQuery.

0 No sé si ustedes encontraron la solución a su problema o no. Me enfrentaba al mismo problema y me estaba volviendo loco para descubrir por qué me aparece el error “jQuery is indedefined” en los complementos que uso. Probé todas las soluciones que obtengo de internet, pero no tuve suerte.

Pero, de repente, algo salpica en mi mente que puede ser que los archivos de script deberían estar en orden. Entonces, moví la referencia de jQuery a la primera posición y todo comenzó a funcionar a la perfección.

Recuerda, chicos, si estás usando algún plugin con jquery, asegúrate de usar el siguiente orden de configuración de referencia para esos campos.

  1. referencia a la biblioteca de jQuery
  2. referencia a las otras bibliotecas de complementos posteriores (dependientes) y así sucesivamente …

p.ej:

  1. “script src =” js / jquery-1.3.2.min.js “type =” text / javascript “…
  2. “script src =” js / jqDnR.min.js “type =” text / javascript “…
  3. “script src =” js / jquery.jqpopup.min.js “type =” text / javascript “…
  4. “script src =” js / jquery.bgiframe.min.js “type =” text / javascript “…

Siempre asegúrese de poner primero la referencia de jquery y luego las bibliotecas posteriores.

Espero que esto resuelva tu problema, especialmente cuando lo usas con MasterPages. Es muy extraño que funcione sin importar el orden que uses cuando no usas MasterPages, pero cuando lo haces, de alguna manera requiere el orden correcto.

Buena suerte y feliz encoding,

Vincent D’Souza

Después de usar el FIrebug, descubrí que los archivos no se encontraron, ya que la ruta relativa para los archivos no funciona. Para resolver el problema, debemos usar el método Url.Content para volver a crear la ruta. Por ejemplo:

  

También puedes intentar dejar que Google aloje jQuery por ti:

  

Esto evitará tener que preocuparse por la ruta relativa al script, evitar la carga en su servidor y será más rápido para los usuarios (que probablemente ya lo tengan en la memoria caché de su navegador).

Recibí el mensaje al tener una discrepancia entre la versión de JavaScript en la página y la versión en el proyecto.

En la página:

Versión actual en el proyecto: jquery-1.4.1 .min.js

Se diagnostica mediante Firebug y su configuración muestra todos los errores, tal como se describe en la respuesta aceptada.

Jquery ?
Te refieres a jQuery ?

Javascript distingue entre mayúsculas y minúsculas. Jquery no es lo mismo que jQuery .

Para elaborar la respuesta “text / javascript”, “application / javascript” funcionará en Firefox y cargará jQuery muy bien. Sin embargo, no cargará el archivo en IE. Utilice “texto / javascript”:

  

Raja tiene razón, URL.Contenido funciona.

  

Además, para evitar sorprenderse en el momento en que está migrando su aplicación a un servidor IIS, no use el servidor de desarrollo web sino que use IIS al desarrollar.

Puede usar IIS directamente desde Visual Studio editando las propiedades web:

  • Ir a la pestaña ‘web’
  • Marque ‘Usar servidor web local de IIS’
  • Haga clic en ‘Crear directorio virtual’
  • Vaya al Administrador de IIS para deshabilitar el acceso anónimo en el directorio virtual creado, si corresponde.

Una razón adicional para este error que descubrí ocurre si está cargando jQuery desde un cdn y un script local desde su servidor. Se cargan de forma independiente, por lo que si el script local finaliza antes de jQuery, también se ejecutará antes, lo que nos da un error encantador. Esto es especialmente un problema si jQuery no está en el caché de navegador, por lo que es posible que este error se produzca la primera vez que se cargan los scripts y desaparecen más tarde.

Para mí, este error generalmente ocurre cuando hay un verdadero error de Javascript en algunos de mis códigos. Esto evita que el archivo jQuery.js se analice completamente. Busque en la Consola de errores de Firebug, Safari u otro navegador compatible con la depuración.

Errores comunes es que otros scripts de Jquery se incluyen primero (Jquery.validation.js) antes de Jquery.js

Esto suele ocurrir cuando tienes un código HTML o JavaScript con formato incorrecto.

Si no hay errores en su javascript (por ejemplo, faltan corchetes), entonces no está incluyendo el archivo jQuery, o está intentando ejecutar algún código que se basa en jQuery antes de que ese archivo se haya cargado.

El camino está equivocado. Vuelve a comprobarlo.

Si todo lo demás falla, asegúrese de que el archivo tenga los permisos correctos establecidos. ¡Esto me acaba de pasar!

Puede hacer clic con el botón derecho en el archivo en su directorio y establecer el permiso allí, o simplemente crear otro archivo .js en Visual Studio y copiar y pegar el contenido. Trabajado como un encanto. 🙂

Para agregar mi problema / solución a esta larga lista …

Estaba usando Windows 2003 para probar el sitio en IE7. El sitio salió bien, pero jQuery no se ejecutó en absoluto. Así que fui directamente a http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js y descubrí que ajax.googleapis.com no estaba en la lista de sitios seguros . Después de agregar * .googleapis.com todo funcionó bien. Una supervisión tonta, pero tal vez esto ayude a alguien más en una situación similar.

tratar

  

Resolví este problema descomentando la referencia jQuery en mi _Layout.cshtml. Después de relanzar el sitio, todo comenzó a funcionar.

¡Correcto! He perseguido esto durante días ahora, cuando está usando un nuevo proyecto MVC desde cero en VS, tiene sus propias referencias a JQuery en la página Layout.cshtml. Si está intentando hacer referencia a JQuery dentro de una página, la referencia en la página Layout.cshtml lo sobrescribirá. Comente el código en la página maestra (Layout.cshtml), y usará las referencias de su página.