gpt4 book ai didi

javascript - 你如何在 View 中混合 JS 和 Ruby 代码以供以后使用 JS?

转载 作者:太空宇宙 更新时间:2023-11-03 18:27:17 24 4
gpt4 key购买 nike

我正在使用 jquery UI DatePicker 小部件来显示日历。日历中的每一天都由属于 Objective 模型的 Result 对象的集合表示。如果一天的所有结果都成功,我将在日历单元格上设置一个类,使其变为绿色。如果其中至少有一个失败了,我就会把它变成红色。如果不存在任何结果,我会将其设为灰色。现在,我做这样的事情:

<%= start_day .. end_day do |day| %>
<div class="hidethis" id="<%= [day.year,day.month,day.year].join(",") %>" value="<%= objective.result_status_for_day(day)%>"/>
<% end %>

我将数据存储在隐藏的 div 中,稍后,当我初始化日历时,在 beforeShowDay 中,我将遍历 div id 以找到与我相关的那个,我设置了负责为日历着色的类细胞。是否有其他方法可以做到这一点,或者这是其他人在实践中使用的东西?

最佳答案

使用 HTML 来存储数据似乎有点迂回。为什么不将您的数据存储为 JavaScript 数据?像这样:

<script type="text/javascript">
window.app = window.app || { };
window.app.objective_data = <%= @raw_objective_data.to_json.html_safe %>;
</script>

然后在 Ruby 中设置您的原始数据,将其保留在 @raw_objective_data 中,然后在初始化过程中将其加载到客户端模型中。或者您可以通过简单的 AJAX 调用将数据直接加载到您的 (Java|Coffee)Script 中。

您还需要避免 '</script>'@raw_objective_data.to_json 中的类似内容, 你可以了解到 over here .

关于javascript - 你如何在 View 中混合 JS 和 Ruby 代码以供以后使用 JS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9195961/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com