Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.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
使用控制器中的数组进行Rails Javascript解析_Javascript_Ruby On Rails - Fatal编程技术网

使用控制器中的数组进行Rails Javascript解析

使用控制器中的数组进行Rails Javascript解析,javascript,ruby-on-rails,Javascript,Ruby On Rails,我在视图中进行Ajax调用,然后控制器将数据从DB提取到一个数组中,现在我想将这个数组值传递给JavaScript,这样我就可以用不同的id更新表中的数据 控制器代码: def AjaxView @var1 = Var.find(:all,:conditions => { :varname=> "one" },:select=> (params[:col])) respond_to do |format| format.js end end AjaxView

我在视图中进行Ajax调用,然后控制器将数据从DB提取到一个数组中,现在我想将这个数组值传递给JavaScript,这样我就可以用不同的id更新表中的数据

控制器代码:

def AjaxView
 @var1 = Var.find(:all,:conditions => { :varname=> "one" },:select=> (params[:col]))
  respond_to do |format|
   format.js 
  end
end
AjaxView.js.erb代码:

$(document).ready(function() {
   $("#test").text("valuetoupdate");
  });
现在,当我运行这段代码时,它成功地更新了视图页面中id=test处的“valuetoupdate”。 相反,我想从数组@var1中逐个更新所有值

我搜索了更多,发现Controller中生成的数组@var1将自动传输到AjaxView.js.erb文件。现在我必须迭代所有值,但此代码在JavaScript文件中不起作用:

<% for var in @var1 %>
$("#3").text(var);
<% end %> 

$(“#3”)。文本(变量);
它给出了空白的回答

谢谢大家

我能够以以下方式解决我的问题:, 我不再使用for循环实现,而是开始使用if-else条件

   <% if @var.to_s == 'valuetoupdate' %>
    { }
   <% elsif @var.to_s == 'valuetoupdate1' %>
    {}

{ }
{}

这对我来说很好。

您缺少
format.js
的块。另外,请将您的javascript发布到目前为止,它实际上实现了ajax调用。@Ben,我在上面添加的javascript对我来说很好。是的,您发布的javascript很好,但它不是ajax调用。ajax调用的代码在哪里?
  • “AjaxView”、:col=>“colname”}、:update=>“Ajaxcall”、:remote=>true%>
  • 测试