在Rails上使用Ajax进行搜索

时间:2013-04-04 16:34:44

标签: ruby-on-rails ajax

使用字段(其中n是输入)和按钮,使用Ajax将第n个用户放入数据库(User.find(n) in rails)中的最简单方法是什么?

<input id="search_input" type="text">
<button id="search_button">Search</button>
<div id="output> Output displayed here </div>

我阅读了创建XMLHttpRequest对象的Ajax tutorial on W3Schools,但这似乎太长了,因为做了这么简单的事情。在rails中有更简单的方法吗?

这是按下按钮时我必须调用的Javascript函数

function find_nth_user() {
var xmlhttp;
if (window.XMLHttpRequest)
  xmlhttp=new XMLHttpRequest();
  }
else
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("output").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","ajax_info.rb",true);
xmlhttp.send();
}

然后在文件中ajax_info.rb(必须正确路由)具有rails代码。

我尝试在Rails上搜索Ajax,但我找到的只是与forms_for有关的东西,我觉得这里不适用。我需要按下按钮才能执行。

1 个答案:

答案 0 :(得分:0)

你不应该像这样处理准系统对象。 jQuery / Prototype / Zepto存在,所以你不必这样做。

观看使用AJAX搜索的这个railscast:http://railscasts.com/episodes/240-search-sort-paginate-with-ajax