2010-03-26 8 views
0

Dire que j'ai une boucle d'objets (style.cover.pic) dans un DIV .style_imageRails avec manipulation JQuery DIV

<div class="style_image"> <%=link_to (image_tag style.cover.pic.url(:small)), style %></div> 

Avec l'utilisation de JQuery Sur un événement click je veux charger (this.href) dans le div.style_image qui n'était pas tout le DIV .style_image.

c'est ce que je l'ai fait tarif:

$(function() { 

$(".style_image a").live('click', function(event) { 


    $(".style_image a").load(this.href + " #show_style"); 

    $.get(this.href, null, null, "script"); 
    return false;  

}); 
}); 

peut-il être fait? et oui comment ???

Cordialement

Dan

Répondre

1

le faire comme ceci:

$(function() { 
    $(".style_image a").live('click', function(event) { 
    $(this).closest(".style_image").load(this.href + " #show_style"); 
    return false;  
    }); 
}); 

Au clic, ce lien a été cliqué sur le lien .style_image parent, puis charge le contenu ici.

+0

Cela a fonctionné parfaitement !!! – MrThomas

+0

Est-il possible d'annuler la charge après un nouvel événement click comme une instruction if? $ (function() { si ('show_style.') De déchargement (this.href). "Style_image a". $() vivre (clic, function (event) {$ (this) .closest (". style_image"). load (this.href + "#show_style"); return false; }); }); – MrThomas

+0

@MrThomas - Ne pas utiliser '.load()', mais vous pouvez le faire avec le formulaire développé $ .ajax ({}) 'qui renvoie l'objet XMLHttpRequest, voir ici pour plus de détails: http://stackoverflow.com/questions/ 446594/kill-ajax-demandes-en-utilisant-javascript-using-jquery –

0

Essayez d'utiliser:

$(this).attr('href'); 

au lieu de:

this.href