使用Rails以Haml形式执行JavaScript

Executing JavaScript in a Haml form using Rails

本文关键字:执行 JavaScript Haml Rails 使用      更新时间:2023-09-26

我正在尝试使用jquery.datetimeentry,我是一个与javascript有麻烦的新手。如果我输入:

$(function () {
    $.datetimeEntry.setDefaults({spinnerImage: 'spinnerDefault.png'});
    $('#defaultEntry').datetimeEntry();
    $('#dateEntry').datetimeEntry({datetimeFormat: 'O/D/Y'});
    $('#timeEntry').datetimeEntry({datetimeFormat: 'H:Ma'});
});

在我的application.js文件,它似乎应该只是工作,但它没有。
但是,如果我在我的表单中放入以下内容(使用haml),它就可以工作了:

%script{:type=>"text/javascript"}
  $('#dateEntry').datetimeEntry({datetimeFormat: 'D/O/Y'});

我认为这是不好的形式,把它放在一行,所以我需要做什么,使它从我的应用程序。js文件工作-或者我应该把它放在其他地方?

$(document).ready(function() { });内包起来

这里:

$(document).ready(function() {
  $(function () {
    $.datetimeEntry.setDefaults({spinnerImage: 'spinnerDefault.png'});
    $('#defaultEntry').datetimeEntry();
    $('#dateEntry').datetimeEntry({datetimeFormat: 'O/D/Y'});
    $('#timeEntry').datetimeEntry({datetimeFormat: 'H:Ma'});
  });
});

顺便说一下,当内联javascript是必须的,使用HAML的:javascript钩子。

:javascript
   alert('hello');