2012-04-02 14 views
1

HTMLJQuery .parent(), um eine ID

<p href="products.php?ref=fijo&tipo=7001ad" class="principal">Fijas</p> 
     <div class="menu_body" id="fijo"> 
     <a href="products.php?ref=fijo&tipo=7001ad">Normal (7001AD)</a> 
     <a href="products.php?ref=fijo&tipo=7001md">Aislada (7001MD)</a> 
     <a href="products.php?ref=fijo&tipo=7001ad80">A+ (7001AD80)</a> 
     <a href="products.php?ref=fijo&tipo=7001md80">A+++ (7001MD80)</a> 
     </div> 

JQ

if(cookie = null) 
    { 
    $("div.menu_body a").click(function(){ 
     $.cookie("current",(this).parent().attr("id")); 
    }); 
    } 

Ich kann nicht die ID des Elements zu erhalten, die ich deutete auf. Ich weiß nicht, ob der Fehler mit dem Parent() Parent() Teil oder irgendetwas anderem ist.

Ich mache ein Tab-System und ich möchte prüfen, ob ein Tab jetzt geöffnet ist, wenn kein Cookie vorhanden ist, wenn dieser Tab geöffnet wird und jemand auf einen Link in diesem Tab klickt, dann speichere die ID des. menu_body DIV, das diesen Link enthält.

+3

sollte, dass sein 'Cookie == null' ein jQuery-Objekt aus dem "dieses" Objekt erstellen? :O –

Antwort

1

ich würde sagen, Sie vergessen haben, char

$.cookie("current",(this).parent().attr("id")); 

sollte so aussehen

$.cookie("current",$(this).parent().attr("id")); 

Sie benötigen

1

(this).parent().attr("id") ist falsch, weil this ein DOM-Element ist. Versuchen Sie es mit dem Ersetzen:

jQuery(this).parent().attr("id") 

(Sie jQuery mit einer $ Verknüpfung ersetzen kann)

Am Ende könnte der Code aussehen, dies zu:

if(cookie = null){ 
    $("div.menu_body a").click(function(){ 
     $.cookie("current", $(this).parent().attr("id")); 
    }); 
} 
Verwandte Themen