在将ruby与javascript混合时,我应该使用哪一组引号?
我很难确定哪一组引号适合加载下面的图像。#icon+i部分在我放入要追加的示例图像并引用正确的div时起作用。但是我不知道如何在src中加载适当的映像在将ruby与javascript混合时,我应该使用哪一组引号?,javascript,ruby,Javascript,Ruby,我很难确定哪一组引号适合加载下面的图像。#icon+i部分在我放入要追加的示例图像并引用正确的div时起作用。但是我不知道如何在src中加载适当的映像 $(document).ready(function(){ alert('test'); <% if @iosapps %> for (var i =0; i < <%= @iosapps.length %>; i++) { $('#icon' + i).append('<img src =
$(document).ready(function(){
alert('test');
<% if @iosapps %>
for (var i =0; i < <%= @iosapps.length %>; i++) {
$('#icon' + i).append('<img src = "<%= @iosapps['+i+'].app_store_icon %>">');
}
<% end %>
});
$(文档).ready(函数(){
警报(“测试”);
对于(变量i=0;i<;i++){
$(“#icon'+i).append(“>”);
}
});
我目前遇到的错误是:无法将字符串转换为整数。您应该使用ruby而不是javascript进行循环。您不能随意混合使用这两种语言。一种是在服务器上执行的,另一种是在客户端浏览器中执行的。了解哪种语言起作用很重要 这段代码应该做你想做的事情(或多或少)
您将字符串
“+i+”
作为数组的索引传递。数组不知道如何使用该字符串,因此会产生错误。您试图将JavaScript代码与Ruby代码混合使用:在客户端上执行for
循环之前,不会执行可能的重复(用PHP代替Ruby)我在浏览器控制台中收到一个错误,它说:资源被解释为图像,但使用MIME类型text/html传输:没有你的数据,我真的说不出更多。但是,至少,现在你没有得到那个错误:)足够公平:)。在浏览器中,通过的图像是实际url未通过的。啊,我修复了它。是%>放错地方了。这帮了大忙,谢谢!
$(document).ready(function(){
alert('test');
<% if @iosapps %>
<% @iosapps.each_with_index do |ia, idx| %>
$('#icon<%= idx %>').append('<img src="<%= ia %>.app_store_icon ">');
<% end %>
<% end %>
});
@iosapps['+i+']