문제

onclick 이벤트를 a에 어떻게 첨부합니까? link_to_function 이벤트를 클릭하면 페이지의 요소가 새로 고쳐 지나요 (부분 사용)?

사용자가 생성 된 링크를 클릭하면 코드가 포함 된 부분을 새로 고침하여 i 업데이트됩니다.

 def add_step_link(form_builder)
    logger.info 'ADD_STEP_LINK'
    link_to_function 'add a step' do |page|
      form_builder.fields_for :steps, Step.new, :child_index => 'NEW_RECORD' do |f|
        logger.info 'inserted js'
        html = render(:partial => 'step', :locals => { :step_form => f, :i=>@i+=1})
        page << "$('steps').insert({ bottom: '#{escape_javascript(html)}'.replace(/NEW_RECORD/g, new Date().getTime()) });"
      end
    end
  end 

나는 단지 더 큰 형태의 부분을 가지고 있습니다.

<%= add_step_link(technique_form) %>

기술의 단계 수를 추적하려고합니다. 내가 작성하는 형태로 사용자는 일련의 지침에 새로운 단계를 추가 할 수 있습니다. 지금은 1-7 단계에 대한 기본 필드가 있습니다. 한 단계를 추가하면 8 단계를 얻습니다. 문제는 후속 단계가 '8'도 번호가 매겨 졌다는 것입니다.

나는 "동적 형식으로 다중 아동 모델"을 확장하고 있습니다. http://railsforum.com/viewtopic.php?id=28447 내 자신의 목적을 위해.

도움이 되었습니까?

해결책

좋아, 나는 당신이하고있는 일에 약간 혼란스러워하지만, 나는 몇 가지 제안을 시도 할 것입니다.

사용하기보다는 link_to_function, 사용 link_to_remote. 링크에 대한 링크는 JavaScript 호출이지만, 실제로하고 싶은 것은 컨트롤러로 다시 호출하여 일부 RJ를 실행하여 전체 부분을 교체하거나, 전류의 끝까지 새 부분 (단계를 포함하는)을 추가 할 가능성이 있습니다. 단계.

이것은 사람들이 블로그 댓글의 끝에 의견을 부여하는 곳에서 볼 수있는 모든 예제와 유사합니다 (Remote_form_for 대신 link_to_remote를 사용하여 예상). http://media.rubyonrails.org/video/rails_blog_2.mov

link_to_remote의 문서를 여기에서 볼 수 있습니다. http://api.rubyonrails.org/classes/actionview/helpers/prototypehelper.html

다른 팁

사용하는 것이 좋습니다 link_to_remote Richh가 제안한대로. 당신을위한 트릭은 @i. URL 매개 변수로 넣었습니다 link_to_remote, 또는 세션 객체에서. 나는 세션을 제안한다 - 그것은 더 쉬운 것 같다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top