Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何在Rails AJAX请求中使用Quicksand jQuery插件?_Ruby On Rails_Ruby On Rails 3_Jquery_Quicksand - Fatal编程技术网

Ruby on rails 如何在Rails AJAX请求中使用Quicksand jQuery插件?

Ruby on rails 如何在Rails AJAX请求中使用Quicksand jQuery插件?,ruby-on-rails,ruby-on-rails-3,jquery,quicksand,Ruby On Rails,Ruby On Rails 3,Jquery,Quicksand,我尝试使用Quicksand jQuery插件来修饰Rails中AJAX调用的响应: 链接: 控制器: def index_project_update if params[:service] && !params[:service].blank? @projects = Project.highlighted.where(:service => params[:service]) else @projects = Project.highlight

我尝试使用Quicksand jQuery插件来修饰Rails中AJAX调用的响应:

链接:

控制器:

def index_project_update
  if params[:service] && !params[:service].blank?
    @projects = Project.highlighted.where(:service => params[:service])
  else
    @projects = Project.highlighted
  end
end
def index_project_update
  if params[:service] && !params[:service].blank?
    @projects = Project.highlighted.where(:service => params[:service])
  else
    @projects = Project.highlighted
  end
  render :layout => false
end
视图:

$(“#家庭项目”)。替换为(“”)
项目:

<div id="home_projects">
  <% if @projects.empty? %>
    <p>No projects. <%= link_to_function("View All", "regatherProjects('')") %>.</p>
  <% else %>
   <ul class="all_projects">
     <% @projects.each_with_index do |project, index| %>
       <li data-id="<%= project.customer.name.underscore.downcase %>_<%= project.name.underscore.downcase %>">
       <%= link_to(image_tag(project.project_images.first.image.home), project) %>
       </li>
     <% end %>
   </ul>
  <% end %>
</div>
<div id="home_projects">
  <% if @projects.empty? %>
    <ul class="all_projects">
      <li data-id="project">No projects. <%= link_to_function("View All", "regatherProjects('')") %>.</li>
    </ul>
  <% else %>
    <ul class="all_projects">
      <% @projects.each_with_index do |project, index| %>
         <li data-id="project_<%= project.id %>">
           <%= link_to(image_tag(project.project_images.first.image.home, :alt => (project.customer.name + " - " + project.name), :title => (project.customer.name + " - " + project.name)), project) %>
         </li>
      <% end %>
    </ul>
  <% end %>
</div>

没有项目

认为问题在于AJAX请求返回的数据(见下文)不是Quicksand期望的格式,但我不确定如何从响应中推断相关信息。我的AJAX请求的响应类似于:

$("#home_projects").replaceWith("<some><html><that><i><need>")
$(“#家庭项目”)。替换为(“”)
因此,问题在于,当它应该使用替换HTML时,它使用上述代码作为Quicksand调用的目标代码:

<some><html><that><i><need>

AJAX请求工作得非常好,但我需要在这里集成Quicksand

我需要:

  • 一个更好的方法来做到这一点或
  • 在上述代码中推断replaceWith()的参数以用作Quicksand的目标代码的方法
如果我遗漏了您认为需要帮助的任何信息,请询问


这是我问的关于堆栈溢出的第一个问题,因此我觉得有义务为任何误用道歉。

如果有人遇到类似的问题,下面的问题在Chrome、Firefox、IE9、IE8和IE7中对我有用

链接:

路线:

match '/index_project_update' => 'application#index_project_update', :defaults => { :format => 'html' }
控制器:

def index_project_update
  if params[:service] && !params[:service].blank?
    @projects = Project.highlighted.where(:service => params[:service])
  else
    @projects = Project.highlighted
  end
end
def index_project_update
  if params[:service] && !params[:service].blank?
    @projects = Project.highlighted.where(:service => params[:service])
  else
    @projects = Project.highlighted
  end
  render :layout => false
end
视图:

<%= render('application/index/projects') %>

项目:

<div id="home_projects">
  <% if @projects.empty? %>
    <p>No projects. <%= link_to_function("View All", "regatherProjects('')") %>.</p>
  <% else %>
   <ul class="all_projects">
     <% @projects.each_with_index do |project, index| %>
       <li data-id="<%= project.customer.name.underscore.downcase %>_<%= project.name.underscore.downcase %>">
       <%= link_to(image_tag(project.project_images.first.image.home), project) %>
       </li>
     <% end %>
   </ul>
  <% end %>
</div>
<div id="home_projects">
  <% if @projects.empty? %>
    <ul class="all_projects">
      <li data-id="project">No projects. <%= link_to_function("View All", "regatherProjects('')") %>.</li>
    </ul>
  <% else %>
    <ul class="all_projects">
      <% @projects.each_with_index do |project, index| %>
         <li data-id="project_<%= project.id %>">
           <%= link_to(image_tag(project.project_images.first.image.home, :alt => (project.customer.name + " - " + project.name), :title => (project.customer.name + " - " + project.name)), project) %>
         </li>
      <% end %>
    </ul>
  <% end %>
</div>

  • 没有项目
  • (project.customer.name+“-”+project.name)),project)%>
<div id="home_projects">
  <% if @projects.empty? %>
    <ul class="all_projects">
      <li data-id="project">No projects. <%= link_to_function("View All", "regatherProjects('')") %>.</li>
    </ul>
  <% else %>
    <ul class="all_projects">
      <% @projects.each_with_index do |project, index| %>
         <li data-id="project_<%= project.id %>">
           <%= link_to(image_tag(project.project_images.first.image.home, :alt => (project.customer.name + " - " + project.name), :title => (project.customer.name + " - " + project.name)), project) %>
         </li>
      <% end %>
    </ul>
  <% end %>
</div>