Pergunta

Eu editar esta pergunta original, como eu acho que já reduzimos o problema ...

Eu tenho um ponto de vista no meu site que não me deixa colocar US $ document.ready dentro de um contentplaceholder masterpage. Eu despojado esta página para os ossos e a única coisa que é especial sobre ele é que tem uma rota personalizada no global

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

Qualquer idéia porque essa rota personalizada pararia $ document.ready funcionando corretamente quando colocado em uma zona masterpages contentplaceholder?

Foi útil?

Solução

Eu tive o mesmo problema e descobriu-se que quando eu usei uma determinada rota mudou a hierarquia do site arquivo percebida como a ligação ../../Content para o arquivo js não funciona mais . Eu fixo-lo, alterando a minha referência de script jquery para ficar assim:

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

Outras dicas

Sua página principal (ou exibição de página, se você não estiver usando páginas mestras) precisa jquery referência. Isso está incluído na mais recente versão beta do framework MVC.

Certifique-se de que você tem jQuery incluídos na tag de sua página.

verificar a sintaxe, bem ...

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

essas versões encurtadas também trabalho:

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

Apenas colocá-lo em algum lugar dentro do controle de conteúdo da sua página de exibição em uma tag <script ...>.

<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 você tem coisas que é executado em cada página, você pode descascar que fora em um arquivo .js e acessá-lo a partir da página mestre. Mas, para funções relacionadas com uma visão específica, esta é provavelmente a maneira mais simples para ir e mais fácil de manter.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top