Javascript .load()Jquery函数同时加载重复窗口
我有下面的Jquery代码:Javascript .load()Jquery函数同时加载重复窗口,javascript,jquery,ruby-on-rails,Javascript,Jquery,Ruby On Rails,我有下面的Jquery代码: $(document).ready(function() { $('tr[href]').click(function(event) { $('tr[href]').removeClass('selected') $(this).addClass('selected'); event.preventDefault(); $('#profile').load('home/users/1'); event.stopPropag
$(document).ready(function() {
$('tr[href]').click(function(event) {
$('tr[href]').removeClass('selected')
$(this).addClass('selected');
event.preventDefault();
$('#profile').load('home/users/1');
event.stopPropagation();
});
});
每次单击目标时,我都会发现.load函数在上次单击时将窗口加载两次。例如,在rails日志中,它显示了几个同时启动的GET/home/users/1,因此我的应用程序变得越来越慢。下面是加载窗口的视图文件:
<div class="col-md-5" >
<div class="table table-responsive" >
<div id='list' >
<% if params[:q] == 'a' %>
<%= render 'users' %>
<% elsif params[:q] == 'b' %>
<%= render 'jobs_index' %>
<% else %>
<%= render 'lineitems' %>
<% end %>
</div>
</div>
</div>
<div class="col-md-5">
<div id="profile">//load the window
</div>
有人能告诉我为什么会这样吗?非常感谢 我解决了。
我修改了代码$'profile'。加载'home/users/1';在application.js中,如下所示:
var url="home/users/"+$(this).attr("href")
$('#profile-outline').load(url+" #special");
并在html文件的最外层添加一个。然后问题就解决了。
总之,只需使用loadurl容器替换loadurl即可