2009-09-15 1 views
0

페이지가 매겨진 모델의 색인의 각 페이지를 순회하고 싶습니다. jquery를 사용하여 페이지를 순환합니다. 나는 link_to 표현식이 jquery에 의해 호출 될 때 create 액션을 호출하고 있음을 발견했다. link_to 표현식은 다른 모든 상황에서 색인 조치를 호출합니다. 예를 들어link_to 액션은 코드가있는 위치에 따라 생성 또는 색인입니다.

: (: 클라이언트 즉 map.resources)

<div id="links"> 
    <% 1.upto(@total_pages) do |number|%> 
    <%= link_to 'Page',"#{clients_path}?page=#{number}" %> 
    <br /> 
    <% end %> 
</div> 

는 기본 라우팅 기대처럼, 인덱스 조치를 호출하는 링크를 생성합니다. 나는 다음과 같은 HTML이 페이지를 통해

순환에

:

var cur = 0; 
var links = []; 
var timeout; 

function nextLink() { 
    if (cur + 1 >= links.length) { 
     cur = 0; 
    } else { 
     cur++; 
    } 
    return links[cur]; 
} 

function nextPage() { 
    $.post(nextLink(), function(data) { 
     $("#output").fadeOut("slow", function(){ 
      $("#output").html(data); 
      $("#output").fadeIn("slow"); 
     }); 
    }); 
} 

function stop() { 
    clearTimeout(t); 
    $("#stop").hide(); 
    $("#start").show(); 
} 

function start() { 
    $("#start").hide(); 
    $("#stop").show(); 
    slideshow(); 
} 

function slideshow() { 
    nextPage(); 
    t = setTimeout("slideshow()", 5000); 
} 

$(document).ready(function() { 
    $("#show").children().each(function() { 
     links.push(this); 
    }); 

    slideshow(); 
}); 

이에서 결과 조치가 만들 수있는 호출입니다 : 여기

<div id="show" style="display: none"> 
    <% 1.upto(@total_pages) do |number|%> 
     <%= link_to 'Page#{number}',"#{clients_path}?page=#{number}" %> 
    <% end %> 
</div> 
<a id="stop" href="#" onclick="stop()">stop</a> 
<a id="start" href="#" onclick="start()" style="display: none">start</a> 
<div id="output"></div> 

그리고는 jQuery의. 내가 뭘 놓치고 있니?

답변

1

URL에 게시 중이기 때문에 상황이 발생했습니다. $. post (...). 레일스는 게시물을보고 매핑 된 자원 마술로 처리하려고합니다. 그것을 $ .get (...)으로 변경하면 괜찮을 것입니다.

+1

감사합니다. –

관련 문제