asset pipeline/coffeescript triggering event twice instead of once

This does not make any sense to me:

I have a model called TypeWell along with it controller and forms. If I
attach a jQuery event Handler using old fashioned Javascript code to its
form partial like shown below:


  $(document).ready(function() {
    $("#type_well_gas_type").change(function() {
      alert("Gas type changed");

It alerts the message once (correctly) as shown when I change the
gas_type drop-down. If however, I move this code from the form partial
(app/views/type_wells/_form.haml.html to the corresponding coffeescript
app/assets/javascripts/ (of course delete it from
the form partical) as shown below:

$(document).ready ->
  $("#type_well_gas_type").change ->
    alert "gas type changed"

then it triggers twice instead of once as expected?

This is as basic as it gets. Is there something that I do not
understand about asset pipeline that is causing this behavior?

Please explain.



OK. I have figure this out and am posting the solution here so that
someone who runs into this problem can benefit from this knowledge.

At some point in time, I have pre-compiled the coffeescript files to
javascript in my assets/javascripts folder and therefore there were
corresponding javascript files along with the coffeescript files in my
development environment. Asset pipeline was executing both instead of

So the moral of the exercise is that if you are using coffeescript, be
sure to delete corresponding javascript files from the
assets/javascripts folder. As soon as I deleted
app/assets/javascripts/type_wells.js.js file, everything worked as