Domanda

Sto modificando questa domanda originale poiché penso di aver ristretto il problema ...

Ho una vista nel mio sito che non mi consente di inserire $ document. già all'interno di un contentplaceholder di pagina master. Ho ridotto questa pagina alle ossa nude e l'unica cosa speciale è che ha un percorso personalizzato in global.asax

 routes.MapRoute("Books",
                 "{controller}/{action}/{keywords}/{pageNumber}",
                  new { controller = "Books", action = "SearchResults" }
                 );

Qualche idea sul perché questo percorso personalizzato smetterebbe di $ document. già funzionante correttamente quando inserito in una zona di contenuti della pagina principale?

È stato utile?

Soluzione

Ho avuto lo stesso problema e si è scoperto che quando ho usato una determinata rotta ha cambiato la gerarchia di file percepita del sito come il link ../../Content per il file .js non funzionava più . L'ho risolto modificando il mio riferimento allo script jquery in questo modo:

<script src="<%= Url.Content("~/Content/jquery-1.2.6.min.js") %>" type="text/javascript"></script>

Altri suggerimenti

La tua pagina principale (o visualizza la pagina se non stai usando le pagine mastro) deve fare riferimento a jquery. Questo è incluso nell'ultima versione beta del framework MVC.

Verifica di avere jQuery incluso nel tag della tua pagina.

controlla anche la sintassi ...

$(document).ready(function() { alert('loaded'); });

funzionano anche queste versioni abbreviate:

$().ready(function() { alert('loaded'); });
$(function() { alert('loaded'); });

Basta incollarlo da qualche parte nel controllo del contenuto della pagina di visualizzazione in un <script ...> tag.

<asp:Content ID="Content1" ContentPlaceHolderID="MainContentPlaceHolder" runat="server">
    <div class="contentItem">
        <%!-- yadda --%>
    </div>

    <script type="text/javascript">
        $(document).ready(function() {
         // do your worst
        });
    </script>
</asp:Content>

Se hai cose che girano su ogni pagina, puoi staccarle in un file .js e accedervi dalla pagina principale. Ma per le funzioni relative a una vista specifica, questo è probabilmente il modo più semplice di procedere e più facile da mantenere.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top