将ruby变量传递给javascript(ruby on Rails)
我有一份药品清单和一份疫苗清单,分别从药品和疫苗表中提取。药物清单的格式为medicine_名称,疫苗清单也是如此。我使用这段代码将这两个存储在vars中将ruby变量传递给javascript(ruby on Rails),javascript,jquery,ruby-on-rails,Javascript,Jquery,Ruby On Rails,我有一份药品清单和一份疫苗清单,分别从药品和疫苗表中提取。药物清单的格式为medicine_名称,疫苗清单也是如此。我使用这段代码将这两个存储在vars中 var injections=<%=@injections%>; var medicines=<%=@medicines%>; 此处。injections是分配给选择疫苗标签的类。medicines是指定用于为药物选择标记的类。和.addmedicines和.addinjections是html按钮 编辑: 当我尝试
var injections=<%=@injections%>;
var medicines=<%=@medicines%>;
此处。injections是分配给选择疫苗标签的类。medicines是指定用于为药物选择标记的类。和.addmedicines和.addinjections是html按钮
编辑:
当我尝试用javascript显示注射剂和药物时,它们显示如下:
药物:
<option>Med1</option><option>Med2</option><option>Med3</option><option>Med4</option>
Med1Med2Med3Med4
注射:
<option>i1</option><option>i2</option><option>i3</option><option>i4</option>
i1i2i3i4
var注入='';
变量='';
您可以使用Rails helper,或者只需调用即可使用json
:
var injections = <%= array_or_string_for_javascript(@injections) %>;
var medicines = <%= array_or_string_for_javascript(@medicines) %>;
// OR
var injections = <%= @injections.to_json %>;
var medicines = <%= @medicines.to_json %>;
var注入=;
var药物=;
//或
var注入=;
var药物=;
在第一个函数之后缺少一个{
应该是:
$('.addmedicines').click(function(){ // <-- right here :)
$('.medicines').append(medicines);
});
$('.addinjections').click(function(){
$('.injections').append(injections);
});
$('.addmedicines')。单击(function(){//在单击.addmedicines
和.addinjections
时,是否尝试向这些选择标记添加选项?是否可以将选择标记标记张贴在此处?不推荐使用javascript
的数组或字符串的可能重复项。
var injections = <%= array_or_string_for_javascript(@injections) %>;
var medicines = <%= array_or_string_for_javascript(@medicines) %>;
// OR
var injections = <%= @injections.to_json %>;
var medicines = <%= @medicines.to_json %>;
$('.addmedicines').click(function(){ // <-- right here :)
$('.medicines').append(medicines);
});
$('.addinjections').click(function(){
$('.injections').append(injections);
});
$('.addmedicines').click(function() // <-- right here :)
$('.medicines').append(medicines);
});
$('.addinjections').click(function(){
$('.injections').append(injections);
});