我需要在我的java脚本中嵌入ruby代码,但这样做不能在.rhtml文件中使用。我通过以下方式做到这一点。
function set_default_values(){
var ele = <%= @default_values[:release] %> ;
var elmnt = document.getElementById("release");
for(var i = 0; i < elmnt.options.length; i++){
if( elmnt.options[i].value == ele ) {
elmnt.selectedIndex = i;
break;
}
}
}
使用某些字符串代替&lt;%= @default_values [:release]%&gt;可以看到预期的行为,任何人都可以告诉我这个问题是什么,或者在rails 2.3中不允许嵌入ruby。
答案 0 :(得分:0)
Ruby的to_s
格式不适用于Javascript。你需要转换它。 JSON是JavaScript的一个子集,因此如果将Ruby对象转换为JSON,则应该在JavaScript中正确解释。
require "json"
...
<%= @default_values[:release].to_json %>
...