2010-03-26 46 views
0

说我在一个DIV .style_image的Rails与jQuery DIV操作

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

随着使用jQuery的上的click事件我想加载(有对象(style.cover.pic)的环this.href)转换为div .style_image,它不是点击所有的.style_image DIV。

这是我已经这样做了票价:

$(function() { 

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


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

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

}); 
}); 

可以这样做?是的如何?

问候

回答

1

做这样的:

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

点击后,该链接看起来就是点击它的父节点.style_image,然后在那里加载内容。

+0

这工作完美! – MrThomas 2010-03-27 13:37:11

+0

是否有可能取消加载类似if语句的新点击事件? $(函数(){ 如果( 'show_style。')卸载(this.href); “style_image一个”。 $()生活( '点击',函数(事件){$ (this).closest(“。style_image”)。load(this.href +“#show_style”); return false; }); }); – MrThomas 2010-03-28 12:21:18

+0

@MrThomas - 不使用'.load()',但可以使用'.ajax({})'扩展形式返回XMLHttpRequest对象,详情请看这里:http://stackoverflow.com/questions/ 446594/kill-ajax-requests-using-javascript-using-jquery – 2010-03-28 12:33:50

0

尝试使用:

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

代替:

this.href