Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.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
是否可以从记录字段填充javascript属性?_Javascript_Ruby On Rails_Partial - Fatal编程技术网

是否可以从记录字段填充javascript属性?

是否可以从记录字段填充javascript属性?,javascript,ruby-on-rails,partial,Javascript,Ruby On Rails,Partial,我有一个场馆记录表,在索引页上显示为部分记录。javascript中的.left和.top值是否可以由取自场馆记录的整数字段填充 另外,如何让显示的脚本针对每个部分运行,因为它当前仅适用于生成的第一个部分 部分场地: <%= link_to venue do %> <div class="venue_partial"> <div class="venue_icon"> <%= image_tag venue.venuetype.

我有一个场馆记录表,在索引页上显示为部分记录。javascript中的.left和.top值是否可以由取自场馆记录的整数字段填充

另外,如何让显示的脚本针对每个部分运行,因为它当前仅适用于生成的第一个部分

部分场地:

<%= link_to venue do %>
  <div class="venue_partial">

    <div class="venue_icon">
      <%= image_tag venue.venuetype.photo.url(:thumb), :class => 'image' %>
    </div>

    <span class="venue_partial_name"><%= venue.name %></span>
    <span class="venue_area_and_type"><%= venue.venuetype.name %></span>
    <span class="venue_area_and_type"><%= venue.area.name %></span>
  </div>

  <div id="venue_map_icon" style="position:absolute;"></div>

  <script>
    document.getElementById("venue_map_icon").style.left= "300px";
    document.getElementById("venue_map_icon").style.top= "310px";
  </script>
<% end %>

'图像'%>
document.getElementById(“场馆地图图标”).style.left=“300px”;
document.getElementById(“场馆地图图标”).style.top=“310px”;

非常感谢您的帮助,非常感谢

当然,它只需要像在HTML中一样输出:

document.getElementById("venue_map_icon").style.left = "<%= venue.somevalue %>px";
document.getElementById(“场馆地图图标”).style.left=“px”;

两个计数都是。现在的问题是,您在javascript中通过ID引用一个元素,但该ID不是唯一的,因此javascript会找到该ID的第一个实例,并将规则应用于该ID,而不是应用于其他div。要解决此问题,您需要使用唯一ID:

<%= link_to venue do %>
  <div class="venue_partial">

    <div class="venue_icon">
      <%= image_tag venue.venuetype.photo.url(:thumb), :class => 'image' %>
    </div>

    <span class="venue_partial_name"><%= venue.name %></span>
    <span class="venue_area_and_type"><%= venue.venuetype.name %></span>
    <span class="venue_area_and_type"><%= venue.area.name %></span>
  </div>

  <div id="venue_map_icon_<%= venue.id %>" style="position:absolute;"></div>

  <script>
    document.getElementById("venue_map_icon_<%= venue.id %>").style.left= "<%= venue.left %>px";
    document.getElementById("venue_map_icon_<%= venue.id %>").style.top= "<%= venue.top %>px";
  </script>
<% end %>

'图像'%>
document.getElementById(“场馆地图图标”)style.left=“px”;
document.getElementById(“场馆地图图标”)style.top=“px”;

精彩的回答!非常感谢你的帮助!