다음과 같이 두 개의 탭이 있습니다.jquery 탭 및 레일 : 이벤트가 겹치기 전환?
<div id="tabs">
<ul>
<li ><%= link_to 'A', a_path %></li>
<li ><%= link_to 'B', b_path %></li>
</ul>
</div>
'A'는 다음과 같은 링크로 렌더링합니다. < % = link_to new_foo_path (: format => : js), : remote => true %>
그 링크를 클릭하면 서버 로그에서 두 번, 때로는 세 번 호출되는 것을 볼 수 있습니다.
어디서나 특별한 클릭 핸들러가 없습니다. 내 탭은 다음과 같이 초기화됩니다 :
$(function() {
$("#tabs").tabs();
});
더 심하게는, 탭간에 앞뒤로 전환하면 링크를 클릭 할 때마다 원격 호출 수가 증가합니다.
그림에서 탭을 제거하면 링크가 예상대로 작동합니다.
레일 3을 jquery-1.4.4.min과 jquery-ui-1.8.14.custom.min으로 실행하고 있습니다. 행운을 빌어 jquery의 다른 조합/버전을 시도했습니다. 누구 아이디어?
감사합니다!
스택 오버플로에 오신 것을 환영합니다! Rails 문제는 아니지만 전환 할 때 클릭 이벤트를 트리거하는 탭 플러그인과 관련이있는 것으로 보입니다. 문제의 원인을 밝히기가 정말 어렵습니다. 1) 탭 플러그인 소스 코드에 링크하고 2) 문제의 원인이되는 코드의 html 데모를 올릴 수 있습니까? (레일즈 링크를 제거하고 대신 클릭하면'alert()'메시지가 나타난다.) –
jQuery 탭은 이미 페이지에있는 콘텐트와 작동한다고 나는 믿는다. jQuery UI 웹 사이트의 예제와 비슷한 클래스 등으로 html을 설정했다. 그런 다음 필요에 따라 jQuery 함수를 요소에 적용하십시오. 나는 이것을 UI 탭으로했던 3 부분 형식으로 설정했다. 아약스를 사용하여 동적 HTML을 요청할 수 없다는 것은 아닙니다. 별도 HTML을로드하는 작업이 조금 더 필요합니다. – agmcleod