Aplicación Rails 4 ... en el entorno de desarrollo, JavaScript no se dispara a menos que la página se actualice

Así que estoy teniendo un problema extraño con mi primera aplicación rails4 donde mi página javascript no se dispara a menos que vuelva a cargar la página.

Esto es cierto tanto para mi canalización de activos JS como también en línea con content_for JS.

en mi archivo /assets/javascripts/cars.js:

$(function(){
    $("#car_car_make_id").on("change", function(){
        //SET MODELS
        $.ajax({
            url: "/car_makes/" + $(this).val() + "/car_models",
            type: "GET",
            dataType: "json",
            cache: false
        })
        .done(function(data) { model_list(data) })
        .fail(function() { alert("error"); })
    });
});

function model_list(data) {
    $("#car_car_model_id").empty();
    $.each(data, function(i,v){ 
        $("<option />").val(v.id).text(v.name).appendTo("#car_car_model_id");
    });
    //ON COMPLETE SHOW
    $("#car_model_div").show();
}

en línea en la página con content_for:

<% content_for :head do %>
<script type="text/javascript">
    var tag = document.createElement('script');
    tag.src = "https://www.youtube.com/iframe_api";
    var firstScriptTag = document.getElementsByTagName('script')[0];
    firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

    var player;
    function onYouTubeIframeAPIReady() {
        player = new YT.Player('yt_vid', {
            height: '390',
            width: '640',
            videoId: '<%= @timeslip.youtube_id %>'
        });
    }
</script>
<% end %>

Ambos solo se disparan si actualizo la página.

Por ejemplo, si hago clic en un enlace a la página con el video de YouTube, no se cargará. Pero si lo refresco lo hará. Lo mismo con el script de canalización de activos, solo hace mi llamada ajax si recargo la página primero.

Respuestas a la pregunta(4)

Su respuesta a la pregunta