2017-03-27 4 views
0

에보기에서 부분적으로 새로 고침레일 자바 스크립트 - 내 프로젝트 내보기에서 부분을 호출하고 클릭

game_player_main.html.erb :

<%= button_to "Wurfbild", home_player_statistic_detail_path(:game_id => @game.id, :player_id => @player.id, :home_or_away => @home_or_away, :player_mode => 'GoalArea'), class: 'btn_submit', :remote => true %> 

player_statistic_detail.js.erb :

$("#player_statistic_detail").html("<%= escape_javascript render(partial: 'home/player_statistic_detail.html.erb', :handlers => [:erb]) %>"); 

모든 것이 정상적으로 작동합니다. 내 부분보기에서 나는 캔버스 필드가 있습니다. 이 필드를 클릭하면 click 이벤트의 x 및 y 좌표를 전달하는 부분을 다시로드해야합니다. 여기

내 코드입니다 :

_player_statistic_detail.html.erb :

<script> 

var canvas = createHiDPICanvas(350, 228); 
var ctx = canvas.getContext("2d"); 
canvas.addEventListener("mousedown", doMouseDown, false); 

function doMouseDown(event) { 
    canvas_x = event.pageX; 
    canvas_y = event.pageY; 

    canvas_x -= canvas.offsetLeft; 
    canvas_y -= canvas.offsetTop; 

    $("#player_statistic_detail").html("<%= escape_javascript render(partial: 'home/player_statistic_detail.html.erb', :handlers => [:erb]) %>"); 

} 

난 그냥 오류가 점점 오전 내보기에 자바 스크립트 명령을 복사하는 경우 :

ActionView::Template::Error (stack level too deep)

내 부분을 새로 고침 player_statistic_detail.html.erb 좌표를 전달 하시겠습니까?

답변

0

한 가지 가능한 솔루션이 될 수 있습니다

var url = "url..."; 
    console.log("URL: " + url); 
    $.ajax(url);