J’essaie d’intégrer la saisie semi-automatique de l’ interface utilisateur jQuery à mon application Rails 4.0 comme décrit dans ce Railscast: 102-AutoCompleteAssociationRevised .
Malheureusement, l’auto-complétion ne fonctionne pas. Je ne reçois aucune suggestion bien que le rendu HTML semble bon:
J’ai aussi désactivé Turbolinks, mais rien n’a changé …
Dans mon Gemfile, j’ai inclus le gem 'jquery-ui-rails'
et mon application.js ressemble à ceci:
//= require jquery //= require jquery.ui.all //= require jquery_ujs //= require bootstrap //= require turbolinks //= require jquery-fileupload/basic //= require jquery-fileupload/vendor/tmpl //= require_tree .
Voici le formulaire que j’utilise, edit.html.erb :
autocomplete.js.coffee:
autocomplete = -> $('#plan_part_name').autocomplete source: $('#plan_part_name').data('autocomplete-source') $(document).ready(autocomplete) $(document).on('page:load', autocomplete)
J’ai trouvé la solution:
Mon formulaire de modification a été rendu par la demande Ajax. J’ai donc dû modifier le fichier Javascript (autocomplete.js.coffee) de:
$(document).on('page:load', autocomplete)
à:
$(document).on('page:update', autocomplete)
travailler correctement avec Turbolinks. Vous trouverez plus d’informations dans le fichier Readme de Turbolinks .
Si vous avez correctement posté le code HTML, cela ne me semble pas très bien:
Cela se traduit par data-autocomplete-source="["
qui ne peut pas être analysé comme JSON ou une URL. Le balisage approprié devrait ressembler à ceci: