2014-01-22 4 views
2

선택한 필드에 따라 URL을 동적으로 변경하는 방법은 무엇입니까? 양식 time_type_id_eqtemp 옵션을 선택한 경우선택한 필드에 따라 양식에서 URL이나 작업을 동적으로 변경하는 방법은 무엇입니까?

= search_form_for @q, url: offers_path, builder: SimpleForm::FormBuilder do |f| 
    = f.input :name_cont 
    = f.input :time_type_id_eq, 
    collection: [['Promotion', 'temp'], ['Permanent', 'permanent']], 
    include_blank: false 
    = f.submit 

나는 수색자으로 더듬다을 사용하고 permanent_offers_path

class OffersController < ApplicationController 

    def index 
    @temporary_offers = Offer.temporary 
    @permanent_offers = Offer.permanent 
    @recommended_offers = Offer.recommended 
    end 

    def temporary 
    @q = Offer.search(params[:q]) 
    @temporary_offers = @q.result(distinct: true).temporary 
    end 

    def permanent 
    @q = Offer.search(params[:q]) 
    @permanent_offers = @q.result(distinct: true).permanent 
    end 
end 

permanent 변화 경로에 대해 유사 temporary_offers_path이 양식에 대한 URL 또는 작업을 설정하고 싶습니다.

+0

올바른 동작으로 전달하고 싶습니까? 또는 다른 URL에 초점을 맞추고 있습니까? –

+0

각 액션 – tomekfranek

+0

에 대해 두 개의 컨트롤러보기 'offers_controller'와 'partners_controller'에서이 양식을 렌더링하고 있는데 올바른 작업으로 라우팅하려합니다. – tomekfranek

답변

1

이 커피 스크립트 예제는 유용 할 수 있습니다 :

$("#submit_search_form").click (e) -> 
    search_type = $('select#search_type').val(); 
    if search_type == 'Client' 
     $("#search_form").attr("action", "/orders/#{order_id}") 
+0

잘 작동하지 않습니다. 선택 – tomekfranek

+0

또는 클릭에 무언가가 있어야합니다, 당신에 따라 달라집니다 .. – ypcat

+0

아마 내가 그 루비 측면에서 처리 할 수 ​​있다고 생각 – tomekfranek

0

내가 자바 스크립트와 HTML을 사용하여이 case.And 체크 상자를 사용합니다.

<script type="text/javascript"> 
function OnSubmitForm() 
{ 
    if(document.myform.Promotion[0].checked == true) 
    { 
    document.myform.action ="temporary.html"; 
    } 
    else 
    if(document.myform.Promotion[1].checked == true) 
    { 
    document.myform.action ="permanent.html"; 
    } 
    return true; 
} 
</script> 

참고 :

<form name="myform" onsubmit="return OnSubmitForm();"> 

    <input type="radio" name="Promotion" value="1">Temporary 
    <input type="radio" name="Promotion" value="2">Permanent 
    <p> 
    <input type="submit" name="submit" value="save"> 
    </p> 
</form> 

자바 스크립트을 형성 이름 myForm을 로 및 HTML을 사용하여

은 첫째로 당신의 양식을 가정 이것은 단지 샘플 코드 귀하 이해

관련 문제