在Rails 3應用程序中,只要某個複選框被切換,我就想讓瀏覽器調用遠程函數。在Rails 2中,這很容易通過將form.ubmit()未被rails.js UJS觀察者
:onclick => remote_function(...)
傳遞給複選框助手。在Rails 3,*功能弱化了REMOTE_,所以我嘗試以下解決方法:從onclick
處理程序調用$("dummy_form").submit();
- 創建一個圍繞該複選框形式使用
form_tag ... :remote => true
- 提交表單
Rails捆綁的rails.js文件是一個觀察器,用於偵聽submit
事件。但是,這些僅在用戶點擊提交按鈕時觸發,而不是在調用form.submit()
時觸發(目前僅在FF中進行測試)。
這會產生不希望的效果,即提交不是通過AJAX在後臺完成,而是通常的方式,因此瀏覽器會離開當前站點並顯示來自控制器的響應。
有誰知道解決方法?也許完全不同的方式來獲得相同的功能?