`
qingshou117
  • 浏览: 47866 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

以AJAX发送查询条件给服务器并用partial显示查询结果

    博客分类:
  • ROR
阅读更多
经验证rails3.0.1下 用不了form_remote_tag/link_to_remote 了,会提示方法没定义。

目标:实现一个表单的内容作为查询条件,AJAX发给服务端返回查询结果
view代码:
<%= form_remote_tag :url => 'search' do %>
   <%= text_field_tag :username %>
   <div><%= submit_tag '查找' %></div>
<% end %>

错误如下:
undefined method `form_remote_tag' for #<#<Class:0x209bd88>:0x209a048>

经jsntghf解答,可以form_tag指定remote属性解决:

<% form_tag 'search', :remote => true do %>
   <%= text_field_tag :username %>
   <div><%= submit_tag '查找' %></div>
<% end %>

不过另外一个问题又来了,用partial显示@problems,代码如下
view:
<%= render :partial  => 'problem',:collection  => @problems %>

contoller:
@problems=Problem.all
--这时view正常显示出问题列表
contoller代码改成
@problems=Problem.find(:first)
view显示报错:
undefined method `each' for #<Problem:0x1bff2d0>

--partial里的collection只能处理find :all查出来的集合。所以contoller代码需要改成@problems=Problem.all
或者约束条件    @problems = Problem.find :all,
    : order => 'id',
    :conditions  => conditions

从jsntghf那学到一个新方法
<% (@problems || []).each do |problem|%>
这样就可以避免报object nil 错误


分享到:
评论

相关推荐

    ASP.NET AJAX 服务器端 源代码

    除此之外,ASP.NET AJAX还提供了Partial Page Rendering机制,它使得只有页面中更改的部分被发送回客户端,减少了网络传输的数据量。此外,ASP.NET AJAX也支持Callback Functions,允许开发者定义在服务器响应完成时...

    NET源码-AJAX查询

    在MVC模式下,我们可以利用jQuery的$.ajax()方法或者$.getJSON()方法向服务器发送异步请求,获取数据后动态更新视图。控制器返回JSON格式的数据,JavaScript解析并插入到DOM中。 3. **jQuery与AJAX**: jQuery库...

    ASP.NET 3.5 AJAX服务器编程精选71例(使用C#)

    【ASP.NET 3.5 AJAX服务器编程精选71例(使用C#)】是一本针对ASP.NET开发者的实践教程,特别关注使用AJAX技术进行服务器端编程。此资源集包含了随书光盘中的多个文件,提供了丰富的代码示例,帮助读者深入理解如何...

    MVC4中用Ajax带省略号分页

    1. **jQuery和Ajax**:jQuery库提供了简单易用的Ajax功能,我们可以通过`$.ajax`方法向服务器发送异步请求,获取分页数据。在MVC 4中,通常会创建一个Controller Action来处理这些请求,返回部分视图或JSON数据。 2...

    完全手册:ASP.net.Ajax电子教程

    - **Partial Page Rendering**:ASP.NET AJAX实现了部分页面渲染,减少了页面重绘的开销,提高了用户体验。 - **Web Services和Page Methods**:为了支持AJAX调用,ASP.NET提供了Web Services和Page Methods两种...

    ajax无刷新的增加数据和查找数据

    在客户端,JavaScript代码可以通过AJAX调用这个方法,将新数据提交给服务器,然后更新页面上的数据显示新增的数据。 4. **数据查找** 对于数据查找,可以创建一个接受查询条件的Ajax方法,返回匹配的记录。客户端...

    webform AJAX

    尽管UpdatePanel简化了AJAX实现,但过度依赖它可能导致性能问题,因为它总是发送整个UpdatePanel的数据到服务器。为优化性能,可以使用UpdatePanel的Trigger属性指定触发异步更新的控件,或者使用更轻量级的AJAX技术...

    Ajax与Atlas开发系列课程:服务器端的AJAX应用

    2. **XMLHttpRequest对象**:这是Ajax的核心组件,它允许JavaScript向服务器发送异步请求并接收响应。开发者需要学习如何创建和使用XMLHttpRequest对象来构建Ajax请求。 3. **ASP.NET AJAX库**:ASP.NET AJAX库包含...

    ASP.NET+AJAX程序设计(第一卷:服务器端)

    本文将深入探讨ASP.NET与AJAX在服务器端的程序设计基础及其核心概念。 **ASP.NET概述** ASP.NET是Microsoft .NET框架的一部分,提供了一套全面的工具和服务,用于构建动态、数据驱动的Web应用程序。它支持多种编程...

    .net的AJAX简单实例 VS2010

    通过这个".net的AJAX简单实例",我们可以学习如何在VS2010中创建一个基本的AJAX应用,例如创建一个简单的搜索功能,用户输入查询后,无需刷新页面就能看到搜索结果。在实际项目中,这样的功能可以显著提升用户体验,...

    asp.net ajax 实现

    在ASP.NET MVC框架中,控制器可以处理AJAX请求并返回JSON或Partial View结果。例如: ```csharp [HttpPost] public JsonResult GetData(int id) { var data = _service.GetData(id); return Json(data, ...

    asp.net Ajax 安装文件

    4. **Partial Page Rendering**:ASP.NET AJAX支持部分页面渲染,这意味着只有页面中发生变化的部分会被发送到客户端,显著减少了网络流量和提高了响应速度。 5. **ASP.NET Web Services 和 ASP.NET Page Methods**...

    MicrosoftAjax.js 实现Ajax类库

    9. **Partial Rendering**:MicrosoftAjax.js支持部分渲染,只更新页面中需要更新的部分,减少了网络传输的数据量,提高了用户体验。 10. **扩展性**:MicrosoftAjax.js提供了丰富的API,允许开发者自定义Ajax行为...

    .net下最简单的ajax示例

    一个简单的例子可能包括一个按钮和一个用于显示服务器响应的区域: ```html &lt;script src="https://code.jquery.com/jquery-3.6.0.min.js"&gt;&lt;/script&gt; &lt;button id="ajaxButton"&gt;点击我 &lt;div id="result"&gt;...

    C#AJAX实例

    在IT行业中,C#与AJAX的结合是创建高效、响应迅速的Web应用程序的关键技术。AJAX(Asynchronous JavaScript and XML)是一种在不刷新整个页面的情况下,能够更新部分网页的技术,显著提升了用户体验。C#,作为.NET...

    ajax安装插件

    1. **Partial Postback优化**:了解如何使用UpdatePanel的条件性更新,减少不必要的网络传输,提升性能。 2. **AJAX Control Toolkit**:这是一个开源的Ajax控件集合,提供了很多增强用户体验的控件,如Calendar、...

    Asp.Net+Ajax 用户名检测.txt

    - 负责发送Ajax请求并根据服务器响应更新界面。 - **服务器端C#代码**: - 处理客户端请求,执行数据库查询,并返回结果。 #### 总结 通过Asp.Net与Ajax的结合,我们可以实现在不刷新页面的情况下完成用户名的...

    .net上ajax的实例

    除了使用内置控件,开发者还可以自定义Ajax处理程序,例如使用PageMethods或HttpHandler,以实现更复杂的需求。 **Chapter 11: 响应式设计与Ajax** 在响应式设计中,Ajax可以改善移动设备的用户体验,通过动态加载...

    AJAX.NET实现无刷新页面

    此时,可以考虑使用Partial Rendering或纯JavaScript实现的AJAX,如jQuery库,以降低服务器负载。 总结来说,AJAX.NET通过提供简便的工具和API,让开发者能够轻松实现无刷新页面,提高Web应用的互动性和响应性。...

    asp.net ajax 简单实例

    // 根据查询结果返回提示信息 if (count == 0) { Response.Write("&lt;script&gt;alert('该用户名未被使用');&lt;/script&gt;"); } else { Response.Write("&lt;script&gt;alert('该用户名已被占用,请重新输入');&lt;/script&gt;");...

Global site tag (gtag.js) - Google Analytics