我在ajax上设置了分页+参数,并且工作正常。
但是,首次加载页面时,需要一段时间。是否可以首先加载视图,然后通过ajax加载内容(就像点击第2页对于ajax的分页一样)?
EDIT /
使用参数条件是否真的很愚蠢?就像我的控制器周围的查询if params[:load] == "ajax"
以及使用此数据的视图部分一样。在jquery中,当文档准备就绪(视图已加载)时,使用get:$.getScript(window.location.pathname + "?load=ajax");
???
答案 0 :(得分:2)
我做了很多。首先加载整个视图,其中包含一些基本布局,然后使用ajax加载实际的重要内容。所以在我的控制器中:
class PriceController < ApplicationController
def price
# do something in order to render the page price.html
end
def price_f
# render the partial which contains heavy sorting of datas
render :partial => "price_f"
end
end
在jquery中
$(document).ready(function(){
$.ajax({
url : "/price_f.html?page=1"
success: function(data){
$("#price_container").html(data);
}
});
})
答案 1 :(得分:0)
假设你正在使用jQuery,你应该能够在文档准备好之后做一些这样简单的事情。实际上,你所做的只是告诉你的分页网址你想要的第1页而不是第2页等。
$(document).ready(function(){
$.get({
url: "/url/for/your/page/data"
});
});
要摆脱当前的初始页面加载(我必须看到您的具体代码,以告诉您确切删除/更改的内容):