Dans mon fichier index.html.erb
, j'ai un formulaire qui envoie avec succès onChange. Toutefois, cela ne fonctionne que si j'utilise les balises <script>
placées après mon formulaire. Pourquoi le même js dans welcome.js
ne fonctionne pas? L'index se charge comme un itinéraire /welcome
.Rails javascript onchange fonctionne avec <script> mais pas extérieurement
# app/assets/javascripts/application.js
//= require jquery
//= require jquery_ujs
//= require jquery-ace.min
//= require jquery.sortable
//= require chartkick
//= require hammer
//= require_tree .
fichier js externes
# app/assets/javascripts/welcome.js
$('.chart-radio-icon').change(function(){
$('#mega_form').submit();
});
vue
# views/welcome/index.html.erb
<%= form_tag mega_chart_path, id: 'mega_form', remote: true do %>
<%= radio_button_tag :metric_type, :followers_count, true, :class => 'chart-radio-icon'%>
<%= label_tag(:followers, 'Followers', :class => 'chart-label chart-label-social') %>
Encore une fois, les travaux js lorsqu'ils sont placés dans <script>
balises dans la vue, mais pas à l'extérieur.
Le javascript est-il chargé sur la page? Pouvez-vous obtenir un 'console.log ('Hello World');' travailler? –
@JamesMilani si je mets 'console.log ('Hello World');' dans le fichier externe, puis aller inspecter> console sur la page je ne vois rien. – HashRocketSyntax
Avez-vous redémarré votre serveur? Cela pourrait être lié à la façon dont vos actifs sont inclus localement dans votre pipeline. –