net mvc example calendario bootstrap asp jquery asp.net-mvc jquery-ui path jquery-ui-theme

example - Dilema de ASP.net MVC y jQueryUI



datepicker mvc razor (4)

A menos que todas tus vistas estén en el mismo nivel, necesitarás usar

  • Use una ruta absoluta como /Scripts/jquery-1.2.6.js
  • O incluso mejor, resuelva una ruta virtual como <% = Url.Content ("~ / Scripts / jquery-1.2.6.js")%>

Url.Content () http://jvance.com/media/2008/10/18/UrlContent5.media

Acabo de mover un proyecto a la versión beta de ASP.net MVC framework y el único problema que tengo es con jQuery y jQueryUI .

Aquí está el trato:

En Site.Master están las siguientes referencias de scripts:

<script src="../../Scripts/jquery-1.2.6.js" type="text/javascript"></script> <script src="../../Scripts/jquery-ui.js" type="text/javascript"></script>

Y al utilizarlos, la accordian UI que tengo en una de las vistas funciona perfectamente, excepto por un problema: las imágenes de ThemeRoller no están incluidas en la página. Si hago un comentario sobre las referencias de jQuery, las imágenes de ThemeRoller están ahí. Todo el css está en la Content folder y todos los scripts están en la Scripts folder .

Sé que este es un problema de ruta tonto, pero me está haciendo temblar.

¿Qué me estoy perdiendo?

Actualizar

Probé la primera respuesta en vano, lea el comentario para más detalles. Gracias de nuevo por aquellos que están viendo.

El segundo enfoque tampoco funciona. Estoy desconcertado.

Otra actualización

El uso de las etiquetas Url.Content para las secuencias de comandos sí permite que las secuencias de comandos se ejecuten correctamente. El uso de una etiqueta regular para la hoja de estilos obtiene todos los estilos en la página EXCEPTO para todos los relacionados con ThemeRoller.

El archivo jquery-ui-themeroller.css está en la carpeta de contenido y cuando inspecciono un elemento, el css está presente. Sospecho que el problema está en la asignación de este archivo css a la carpeta de imágenes para themeroller, que también está en la carpeta de contenido. Enlaces de imagen en este archivo como se especifica como: background: url(images/foo.gif)

¿Los enlaces en este archivo deben cambiar?


Necesita cambiar los enlaces en jquery-ui-themeroller.css para señalar la ubicación actual de las imágenes.

Al igual que en, debe actualizar la ruta de las imágenes que está buscando el archivo CSS.

background: url(images/foo.gif)

Elimina las "imágenes /" de tus rutas para que se vea como:

background: url(foo.gif)

ya que tanto su css como sus imágenes están en la carpeta de contenido.


protected void Page_Load(object sender, EventArgs e) { Page.ClientScript.RegisterClientScriptInclude(this.GetType(),"JQuery", ResolveUrl("~/js/jquery.min.js")); Page.ClientScript.RegisterClientScriptInclude(this.GetType(), "JQueryUI", ResolveUrl("~/js/jquery-ui.custom.min.js"));


ayuda esto?

http://forums.asp.net/p/1334947/2690469.aspx

La razón de la inconstistencia es muy simple, ¡aunque admito que no es fácil de entender! Cuando tiene una etiqueta <link> dentro de <head runat = "server">, ASP.NET procesará la etiqueta <link> y detectará las URL y las resolverá en relación con la raíz de la aplicación. Cuando tiene una etiqueta <script> en la página (sin runat = "servidor"), ASP.NET lo dejará en paz, ya que es simplemente HTML antiguo.

El uso de Url.Content () es el enfoque que usaría para resolver esto, ya que se resolverá en relación con la raíz de la aplicación, al igual que la etiqueta <link>.