레일에서 태그를 선택하려면 OnChange 이벤트를 추가하는 방법
-
13-09-2019 - |
문제
여기에 onchange 이벤트를 추가하려면 어떻게합니까?
프레임 워크 : 레일
데이터베이스 : MySQL
데이터베이스에서 옵션을 채우고 있으며 사용하게되었습니다. options_from_collection_for_select
select_tag(:variable,options_from_collection_for_select(:all, :id, :name))
해결책
select_tag
가져갑니다 options
최종 매개 변수로서 해시는 선택에 대한 HTML 속성을 추가 할 수 있습니다. 그래서 추가하려면 onchange
기인하다:
select_tag :variable, options_from_collection_for_select(:all, :id, :name), :onchange => 'your_onchange_handler()'
다른 팁
다음과 같은 것을 시도하십시오.
:onchange => remote_function(:url => {:controller => 'controller', :action => 'action'})
select_tag의 경우 다음을 추가하십시오.
{:onchange => "myHandler();" }
또한 OnChange가 작동하지 않으면 시도해 볼 수 있습니다. onChange
자본 C와 함께
마지막으로 select_tag를 양식과 혼동하지 마십시오.
select 님과 관련하여 유사한 질문에 대한 나의 대답을 확인하십시오.
추가하고 싶을 수도 있습니다 onchange
속성 인라인 :
select_tag(:variable,options_from_collection_for_select(:all, :id, :name)), {:onchange => "(function(e){ e.target.value }).apply(this,arguments)"}
내 경우에는 이름이 지정된 기능을 어디에 두어야하는지 확실하지 않거나 때로는 간단한 태그를 만들기 위해 함수를 만드는 것이 지루합니다. 그래서 사람들은 인라인 기능을 작성하는 경향이 있습니다.
그러나 간단한 라인과 같은 {onchange: "e.target.value"}
변수가 없기 때문에 작동하지 않습니다 (예 : event
) 정의.
솔루션은 인수를 받아들이는 자체 실행 기능입니다.
제휴하지 않습니다 StackOverflow