从rails 3 partial访问iframe元素

时间:2015-07-28 09:26:22

标签: javascript jquery ruby-on-rails ruby-on-rails-3 iframe

我正在尝试从rails 3部分访问iframe dom元素但不是预期的。

我正在尝试像这样访问iframe

$j("#batch_grid_frame").contents().find('#ship_box_id').html("HTML")

当我从应用程序访问页面时,它不会更新DOM。但是当我在浏览器控制台中运行相同的下面的代码时,这是有效的。

$j("#batch_grid_frame").contents().find('#ship_box_id').html("HTML")

在谷歌搜索并尝试了各种各样的事情后,这是有效的,但在Jquery中有一些方法可以让它工作

var iframe = window.parent.document.getElementById('batch_grid_frame');
var innerDoc = iframe.contentDocument || iframe.contentWindow.document;

innerDoc.getElementById("shipyu_ox_id").innerHTML = "<%= escape_javascript(render :partial => 'elements/box_select', :locals => {:ywo_types => @ywo_types}) %>";

任何帮助将不胜感激。感谢。

1 个答案:

答案 0 :(得分:0)

最后帮助我解决问题的是以下答案how to access iFrame parent page using jquery?

我将代码更新为

$j("#batch_grid_frame",window.parent.document).contents().find('#ship_box_id').html("HTML")

它有效。感谢。