ruby代码中的Javascript变量
Javascript variables in ruby code
在我的RoR项目中,我得到了html页面,在那里我用javascript更改div的背景图像。Javascript函数向我发送索引,我想用这个索引来获取ruby数组的元素。
查看我的代码
function drawNewProject (index){
console.log(<%= 'index' %>)
<% index = 'index' %>
<% @existProjects = Admin::Project.order('weight') %>
<% @existProject = @existProjects[index] %>
var image = document.getElementById('block_one')
image.style.backgroundImage="url('<%= @existProject.image(:large) %>')";
}
但是这条线
<% @existProject = @existProjects[index] %>
给我错误
no implicit conversion of String into Integer
你知道如何改正吗?Thnx。
您必须考虑<%= erb %>
块在发送到浏览器之前在服务器中执行,一旦到达,javascript就会运行。
您的浏览器不知道ruby或php或其他什么。。。它只接收html和js(不管是静态文件还是动态生成的一堆js)并运行它
这意味着在渲染时必须知道所有数据。如果您的应用程序依赖于动态数据或用户交互,那么您必须执行ajax请求,并使用正确的js返回调用,以便由浏览器运行。
相关文章:
- 将函数的上下文应用于javascript变量
- 如何通过ajax刷新JSF填充的javascript变量
- Javascript变量赋值|
- 限制javascript变量的最小/最大整数
- 来自文本输入null的html javascript变量
- 访问jsrender模板中的全局javascript变量并更新它
- 从数据库中获取数据并插入JavaScript变量
- 如何将javascript变量传递到Meteor Spacebars模板中
- 将JavaScript变量保存到Rails模型
- 在if语句下的html中使用javascript变量
- Javascript变量分配-按类别
- 操作javascript变量[HTML]以只显示文本
- 无法比较javascript变量
- 如何将smarty变量与javascript变量进行比较
- 如何使用PHP将javascript变量添加到mysql数据库中
- Javascript 变量使用 jquery 查找变量
- 重新加载页面时Javascript变量发生变化
- 在asp classic中使用javascript变量
- 全局Javascript变量变为null
- 如何向服务器端提交javascript变量