1

私はapp/assets/javascripts/media_preview_script.jsturbolinks:リモート本当の呼び出しを上発射しない負荷イベント、レール、jqueryの

にシンプルなJSファイルを持っている
$(document).on('turbolinks:load', function() { 
    $("#cat").on('click', function() { 
    showBrowseInput() 
    }) 
}) 
function showBrowseInput() { 
    do stuff here 
} 

たぶんturbolinks:loadは、このスクリプトは、最初のページの負荷に接続した後、任意のturbolinksはその後呼び出すになり、しかしそれはそうしないでしょう。ページがロードされたときにロードされるのは、remote: trueコールが戻ってきたときに呼び出されるイベントだけです。これは私のアプリで持っているスクリプトと同じです。 このファイルは、最初に$(document).on('turbolinks:load'...が削除されていて、ビューフォームにファイルを含めると、文書にダブルアタッチメントが表示されず、jsコールまたはページロードごとにイベントが添付されるため、この問題が発生しています。だから私の質問は、javascript_include_tagはturbolinks関数を追加しますか?または誰でもここで何が起こっているか私に電話することができます。私は、タグのAPIドキュメントhereとレイアウトとレンダリングが含まjavascipt

<%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %> 

答えて

1

hereが、私は問題はremote: trueはそれをすべての仕事を作ることだと思う/ application.html.erbレール5.

レイアウトを使用していますajaxでhttps://stackoverflow.com/a/8956770/2162591

UPDATEで述べたよう

$('form').ajaxError(function(event, request, settings) { 
    // your code 
}) 

$('form').bind('ajax:success', function(evt, data, status, xhr){ 
    // your code 
}) 

:成功のページの前にトリガーされます。

私は、このソリューションで得た唯一の問題は、AJAXがあることであるあなたは、このコードで欲しいイベントを処理することができます完全にリフレッシュされます。私は代わりにこのコードを使用しました:

$('form').bind('turbolinks:request-end', function(evt, data, status, xhr){ 
    // your code 
}); 
+0

本当に私はturbolinksとリモートと混同していました。ありがとうございました! –

関連する問題