Pergunta

Eu estou tentando incluir JQuery na minha pele DotNetNuke adicionando estas duas linhas de código na parte superior da minha pele DNN:

<%                              
Page.ClientScript.RegisterClientScriptInclude("jquery", "http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js")
Page.ClientScript.RegisterStartupScript(Me.GetType(), "jQueryNoConflict", "jQuery.noConflict()", True) 
%>

Infelizmente, quando eu ver fonte na minha página, eu não vejo as jquery.min.js tag referenciando apropriadas em qualquer lugar. É DotNetNuke alguma forma expulsando os meus pedidos para adicionar script para minhas páginas aqui? o que estou perdendo? Eu sou um pouco de um novato DNN.

Foi útil?

Solução

suspiro. A solução é certificar-se de colocá-lo no método Page_Load (), e não o próprio código de renderização de páginas. Acho que eu era tarde demais no ciclo de vida página para fazer o que eu queria fazer.

<script runat="server">
    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Page.ClientScript.RegisterClientScriptInclude("jquery", "http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js")
        Page.ClientScript.RegisterStartupScript(Me.GetType(), "jQueryNoConflict", "jQuery.noConflict();", True)
    End Sub
</script>

Outras dicas

Qual versão do DNN você está usando? O DNN não suporta incluindo jQuery, a menos que você está usando DNN versão 5. Veja aqui para mais informações

Você pode executar em problemas de fazê-lo desta forma, dependendo de qual versão do seu código vai ser alvo, e se ou não o seu módulo será utilizado várias vezes na mesma página.

Eu desenvolvi um conjunto de métodos para melhor lidar com isso, que são a versão independente, para que possa fazer uma única chamada linha como esta:

InjectjQueryLibary(this.Page, false, false, false); 

Os valores booleanos são 'incluem jQuery UI', 'use versão descompactada' e 'incluem noConflict ()'.

O código completo listando disponível neste blog: incluindo jQuery em um módulo DotNetNuke com código independente versão

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