Pregunta

Esta podría ser una respuesta simple, pero tengo algunos problemas para escribir este pequeño script de carga ... Creo que tengo un error en alguna parte, puedo solucionarlo, pero la página no se carga:

Jquery:

$(document).ready(function() {
//Load content
    $(".load").click(function(){
            $("#content").empty();
            loadName = $(this).find("a").attr("id");
            $("#content").load("/content/" + loadName + ".php");
            });
});

HTML:

<div id="select">    
    <div id="menu">
    <ul>
    <li><a class="load" href="javascript:void(0)" id="project1">Project 1</a></li>
    <li><a class="load" href="javascript:void(0)" id="project2">Project 2</a></li>
    </ul>
    </div>
</div>
<div id="content"></div>

ambos archivos php se encuentran en un enlace como este (tenga en cuenta que estos son solo nombres ficticios y no enlaces reales):

http://www.hostname.com/content/project1.php
http://www.hostname.com/content/project2.php

¿Fue útil?

Solución

ya que definió $ ('. load') , no necesita hacer find ('a') para $ (this) . Simplemente use $(this).attr('id')

Otros consejos

Creo que su línea loadName debería ser esta:

var loadName = $(this).attr("id");  // didn't see a declaration in your code

jquery's find () " no busca los elementos seleccionados, solo sus descendientes. "

Parece que ya tienes " esto " apuntando a su " a " elementos, así que deshazte de find ().

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top