2012-09-06 4 views
0

여기 내 JS.coffee 코드입니다 :어떻게 컨트롤러를 rails3하는 JS에서 PARAMS를 전달하는

fetchselect =(val) -> 
$.ajax(url: '/firstpages/page', dataType: 'json', par_id: val) 

$('.homeNav').find('.unactive').click -> 
id = $(this).attr('id') 
fetchselect(id) 

와 여기 내 컨트롤러 코드는 다음과 같습니다

def page 
@select = Firstpage.where(:pid=>params[:par_id]) 

respond_to do |format| 
    format.html # page.html.erb 
    format.js { render :layout => false } 
    format.json { render :json => @select } 
end 

끝 그것은을 전달할 수 없습니다 $ ('. homeNav')를 클릭하면 로그에 다음 메시지가 표시됩니다.

2012-09-07 05:27:07 +0800에서 127.0.0.1에 대해 GET "/ firstpages/page"를 시작했습니다. FirstPage로 처리 컨트롤러 # 페이지 JSON Firstpage로드 (0.2ms) SELECT "firstpages". * "firstpages"WHERE "firstpages". "pid"IS NULL 2ms에서 200 OK 완료 (보기 : 0.1ms | ActiveRecord : 0.2ms)

답변

0

실제 아약스 요청에 문제가있는 것 같습니다. 시도해보십시오.

$.ajax({ 
    type: "POST", 
    url: '/firstpages/page', 
    dataType: 'json', 
    data: {par_id : val}) 
}) 

자세한 내용은 jQuery $.ajax documentation을 확인하십시오.

+0

Ajax를 달성 할 수 없지만 로그에 다음과 같이 알려주십시오. "/ firstpages/page? par_id = nb"를 시작하십시오. "/ firstpages/page"를 원합니다. – xieyu33333

+1

params를 url이면 POST 요청을 수행해야합니다. 나는 그것을 원래의 대답에 추가 할 것이다. "Ajax를 달성 할 수 없다"는 말은 자바 스크립트 오류 또는 Rails 라우팅 오류 때문입니까? – jrmyward

+0

대단히 감사합니다 ~~ – xieyu33333

관련 문제