如何用数据库值填充JQuery数组
我正在使用JQuery和Rails开发一个自动完成表单。但是,我不知道如何将值从数据库拉到JQuery(我相信这必须通过Rails完成) 这是我在jQuery中的自动完成函数如何用数据库值填充JQuery数组,jquery,ruby-on-rails,Jquery,Ruby On Rails,我正在使用JQuery和Rails开发一个自动完成表单。但是,我不知道如何将值从数据库拉到JQuery(我相信这必须通过Rails完成) 这是我在jQuery中的自动完成函数 <script> $(document).ready(function() { $( "#BOOKSEARCH" ).autocomplete({ source: programmingLang }); }); var programmingLang = ["ActionSc
<script>
$(document).ready(function() {
$( "#BOOKSEARCH" ).autocomplete({
source: programmingLang
});
});
var programmingLang = ["ActionScript","AppleScript","Asp","BASIC","C","C++",
"Clojure","COBOL","ColdFusion","Erlang","Fortran","Groovy","Haskell",
"Java","JavaScript","Lisp","Perl","PHP","Python","Ruby","Scala","Scheme"];
</script>
$(文档).ready(函数(){
$(“#图书搜索”).autocomplete({
资料来源:编程语言
});
});
var programmingLang=[“ActionScript”、“AppleScript”、“Asp”、“BASIC”、“C”、“C++”,
“Clojure”、“COBOL”、“ColdFusion”、“Erlang”、“Fortran”、“Groovy”、“Haskell”,
“Java”、“JavaScript”、“Lisp”、“Perl”、“PHP”、“Python”、“Ruby”、“Scala”、“Scheme”];
然而,此时自动完成从硬编码数组填充。如何用rails中的数据值填充这个数组
谢谢您只需向返回此数组的操作发出一个简单的AJAX请求:
$(document).ready(function() {
$.get('path-to-json', function(data){
$( "#BOOKSEARCH" ).autocomplete({
source: data
});
});
试试这个:
var programmingLang = <%= Language.all.map(&:name).to_json.html_safe %>;
var编程语言=;
假设您有一个具有名称列的模型语言
请确保您没有数千条或更多的记录,因为这将减慢速度,甚至可能抛出超时错误。在这种情况下,您应该使用ajax。有两个答案可以解释ajax
或
var编程语言=;
rails控制器需要返回带有这些值的数组(或json对象,取决于您的js要求)您可以通过简单的调用调用此控制器来检索数据。
一旦你有了数据,你就可以用同样的方式填充它
你可以找到关于rails ajax的更多信息。如果你有有限的标记,那么就没有必要点击服务器,最好以数组的形式携带记录。如果你有有限的标记,那么就没有必要点击服务器,最好以数组的形式携带记录。这是真的。这取决于自动完成的具体实现方式。jQueryUI提供了一些动态()和静态()版本的演示,可能会有所帮助。
var programmingLang = <%= ruby_array.to_json.html_safe %>;