【发布时间】:2015-10-03 22:06:10
【问题描述】:
我需要在 javascript 代码中获取参数的值并将其传递给 rails 局部视图,但它不允许我这样做。这是我所拥有的:
<div id="myCarousel" data-carousel-3d>
<% @users.each do |user| %>
<input type="image" src="/assets/<%= user.location %>" data-toggle="modal" data-target="#modal-1" />
<% end %>
</div>
<script>
$('#myCarousel').on('select', function (evt, index) {
var myHtml = "<\%= escape_javascript (\"#{render :partial => 'share', :locals => { :user_location => ";
myHtml = myHtml.concat(index);
myHtml = myHtml.concat(".jpg }}");
$("#modal-test").append("<%= escape_javascript( myHtml ).html_safe %>");
});
</script>
这段代码会给我和错误信息:
# 的未定义局部变量或方法 `myHtml'
我尝试将整个字符串连接到 myHtml 并执行 append(myHtml) 但这样它不会在页面中呈现 erb 代码。它显示为一个字符串。
我们有一个显示图像的轮播,最终目标是当用户单击其中一个图像时,我们会显示一个模态窗口,其中包含他们单击的图像。
有什么想法吗?
【问题讨论】:
-
因为在rails尝试渲染页面的时候,javascript dom还没有加载,所以信息还不存在。根据我所看到的,您正在提交一个表单并希望显示一个模态
标签: javascript ruby-on-rails ruby-on-rails-3 ruby-on-rails-4 erb