ページの読み込み時に実行される描画関数があります。html.erb file
抜粋は次のとおりです。
<div class="canvasarea">
<canvas id="myCanvas" width="360" height="840"></canvas>
</div>
<script>
//definition of vars used in draw function...
window.onload = function() {
window.setTimeout(drawSomething,500)
};
function drawSomething() {
context.drawImage(imageObj, xOffset, yOffset);
}
</script>
ページでボタンが押されたときにこの画像を再描画したい。そのボタンは html.erb ファイルにあります。現在、いくつかtr
の s を置き換えています。drawSomething()
ボタンが押されたときに関数を呼び出したい。.js.erb file
:_
<% @pos_range.each do |p|%>
$("td#add_foo_<%= p %>").replaceWith("<%= escape_javascript(render(:partial => 'bars/update_foo_position', :locals => { :id => @foo.id, :position_str => @position_str, :position => p} ))%>");
<% if (@foo and p == @foo.position) or @pos_range.length == 1 %>
$("td#add_foo_button_<%= p %>").replaceWith("<%= escape_javascript(render(:partial => 'bars/update_foo_position_button', :locals => { :id => @bar.id, :position_str => @position_str, :position => p} ))%>");
<% else %>
$("td#add_foo_button_<%= p %>").replaceWith("<%= escape_javascript(render(:partial => 'bars/update_foo_position_empty', :locals => { :id => @bar.id, :position_str => @position_str, :position => p} ))%>");
<% end %>
<% end %>
<% if @foo%>
$("#tr_<%=@foo.name %>").hide()
<% end %>
$("#dialog").dialog("close").remove();