我正在尝试从 html 发送一个用于 javascript 的数组,并使用 Ruby 的变量,如下所示:
<% @data.each do |d| %>
<input type="hidden" id="name" value= "<%= d.name %>">
<% end %>
“data”是模型的变量
def index
@data = organizations.all
end
在js中我使用了一个id为“name”的变量
var nombre = document.getElementById("name").value;
var x = name;
我希望 x 是一个像这样的数组:
["Org1","Org2","Org3"]
谢谢你所做的一切
最佳答案
您正在创建 X 个具有相同 ID 的字段。这是一个问题,ID 应该是唯一的。不过还有一个替代方案,您可以使用 A CLASS!
<% @data.each do |d| %>
<input type="hidden" class="js-names" value= "<%= d.name %>">
<% end %>
获取元素列表
// Array of elements
var elements = Array.prototype.slice.call(document.getElementsByClassName('js-names'));
var names = elements.map(function(element) { return element.value; });
但是,更好的方法肯定是使用 gon
关于javascript - 使用数组值隐藏输入 - Ruby on Rails,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39927439/