2011-09-03 3 views
1

나는 '생각'을 올리는 형식을 가지고있다. 아약스를 사용하여이 작업을 수행하도록 설정했습니다. 기본적으로 생각과 생각을 게시 한 사용자를 생각 목록 끝에 추가합니다. 이 worksas은 create.js.erblink_to javascript를 자바 스크립트에서 레일로 호출 할 때?

$('#thoughts') 
    .append("<div class='thoughts'><%= @thought.user.name %><p><%= @thought %></p></div>"); 

이 자바 스크립트를 사용하여 예상하지만 난 그렇게

$('#thoughts') 
    .append("<div class='thoughts'><%= link_to(@thought.user.name, @thought.user) %><p><%= @thought %></p></div>"); 

같은 생각을 게시 한 사용자에 대한 링크를 추가하려고하면 그것은에 대한 생각을 추가 않는다 생각 목록. 여전히 데이터베이스에 게시하지만 표시하지는 않습니다.

도움을 주시면 감사하겠습니다. 감사합니다.

답변

3

는이 같은 escape_javascript을 사용할 수 있습니다

$('#thoughts') 
    .append("<div class='thoughts'><%= escape_javascript(link_to(@thought.user.name, @thought.user)) %><p><%= @thought %></p></div>"); 

당신은 분명한 이유 작동하지 않는 다음 코드를 생성합니다 escape_javascript create.js.erb를 사용하지 않는 경우 :

$('#thoughts') 
    .append("<div class='thoughts'><a href="/thoughts/1">Username</a><p>Thought</p></div>"); 
             #^
             # This is the problem, 
             # which is fixed by escape_javascript 
관련 문제